2017-01-13 5 views
0

Я хочу вставить 4 значения в таблицу вызовов SKU. В этом случае я хочу передать одно значение из другой таблицы, в то время как у меня есть 3 значения из текстового поля.SQL insert select statement

insert into [dbo].[Sku] (skuid, clientid, skudesc, [Type]) 
values (test, clientid, test, physical) 

select Clientid 
from [dbo].[Client] 
where clientname like 'Admin'; 

Не могли бы вы предложить мне?

Спасибо

+0

строки SQL = строка .Format ( "вставить в [dbo]. [Sku] (skuid, clientid, skudesc, [Type]) значения ({0}, {1}, {2}, {3})" + "select Clientid from [dbo]. [Client], где имя клиента, например «Admin»; », textBox1.Text, textBox2.Text, textBox3.Text, textBox4.Text); – jdweng

ответ

4

вы можете использовать insert into .. select .. синтаксис, но значения, которые вы хотите получить из текстового поля должны быть в рамках выбора пункта:

insert into [dbo].[Sku] (skuid,clientid,skudesc,[Type]) 
    select 'test' as skuid, clientid, 'test' as skudesc, 'physical' as [type] 
    from [dbo].[Client] where clientname like 'Admin'; 
+0

Спасибо @ Нир Леви Спасибо –

1
Create procedure procName 
    (
     @test int, 
     @clientid int 
    ) 
    As 
    Begin 

    insert into [dbo].[Sku] (skuid,clientid,skudesc,[Type]) 
    values (@test,@clientid,@test, 
    (select Clientid from [dbo].[Client] where clientname like 'Admin')) 

    End