Ⅰ 如何用一個sql實現一個表的數據同時插入到兩個表
--假設tbA、tbB是系統中已存在的表
insertintotbA,tbBselect*fromtbC
--假設tbA、tbB是系統中還沒創建的表
select*intotbA,tbBfromtbC
--假設只插入目標表的部分欄位
insertintotbA(col1,col2,col3,...)selectcol1,col2,col3,...fromtbCwhere...
Ⅱ sql如何同時向兩張表插入數據
給你寫個觸發器:
create
trigger
Mytr
on
a
for
insert
as
insert
into
b
select
name,id
from
inserted
觸發器給建立後,當插入a表數據後,觸發器自動觸發執行
將觸發器臨時保存的新數據表:inserted表的內容插入到b表裡
Ⅲ SQL怎麼實現同時向兩個表插入數據
這樣的語句可以放在存儲過程里
declare @id int
insert into table1 (name,password) values (...)
set @id=@@identity --取到剛插入的id
insert into table2 (age,sex,userid) values (...@id)
其實這樣就可以了。如果你擔心兩個表的數據不同步,比如可能插入了table1後,但是出錯了,表1有數據但表2沒有,你可以把這2條語句放一個事務里。
Ⅳ 同時向兩張表插入數據怎麼寫sql
沒有直接insert兩張表的語句,要麼直接寫兩個insert語句,要麼在表結構一樣的情況下先插入一個表,然後insert select語句復制到另一表
Ⅳ Sql語句同時插入兩個表
SQL Server里可以使用@@identity來獲取剛剛生成的那個自增長的Id
你insert A之後立刻select @a=@@identity,然後把@a插入到表B就可以了。
當然,你也可以用觸發器,對A的after insert觸發器,在觸發器裡面有inserted表,在其中可以得到剛剛插入的那一行的數據,取出來,圖片ID,插入B,但問題是,你要插入B的其他數據在觸發器中如何得到,因為要插入B的數據,不都在A中,因此這么做很麻煩。不如第一個方法簡單。
Ⅵ SQL同時插入多張表
通過事務來實現,也就是說,SqlCommand的CmdText屬性在一個方法當中可以賦多個SQL語句
SqlConnection sqlConnection = new SqlConnection();
...初始化連接
// 開啟事務
SqlTransaction sqlTransaction = sqlConnection.BeginTransaction();
// 將事務應用於Command
SqlCommand sqlCommand = new SqlCommand();
sqlCommand.Connection = sqlConnection;
sqlCommand.Transaction = sqlTransaction;
sqlCommand.CmdText=第一個sql語句
sqlCommand.ExcuteNoneQuery();
sqlCommand.CmdText=第二個sql語句
sqlCommand.ExcuteNoneQuert();
try
{
// 利用sqlcommand進行數據操作
...
// 成功提交
sqlTransaction.Commit();
}
catch(Exception ex)
{
// 出錯回滾
sqlTransaction.Rollback();
}
如果在執行第二次SQL語句是出錯了,那麼就會到Catch異常中,執行回滾,那麼第一次執行的也同樣回滾了,所以必須2個都一行成功才往資料庫中提交
這里是用了2次SQL語句,如果你想用1個語句同時操控2個表的話,就要用到存儲過程或者是觸發器,存儲過程和觸發器你如果想知道的話加QQ吧:312976625,我給你講.
Ⅶ sql同時插入兩個表
提供一種方法,Insert into T1 out put inserted.a values('b','c');可以返回獲得的自動編號,a.
你可以在程序中獲得。然後再做後續的Insert 操作。
補充:必須是SQL Server 2005,否則不能使用Output字句
Ⅷ sql server一條數據插入兩個表
方法1:代碼中使用多條sql語句
方法2:寫存儲過程,代碼中執行存儲過程
方法3:寫觸發器,插入一個表後,自動插入其他表
Ⅸ sql如何同時向兩張表插入數據
SqlCommand cmd = new SqlCommand();cmd.CommandText="insert into a values('"+要插入的name+"');insert into b values('"+要插入的smallname+"')";cmd.ExecuteNonQuery();