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,我給你講.
B. 資料庫SQL語句~四表連接
1、如圖所示,打開了SQL Server 2008,並創建好了資料庫。然後看當前是否是在自己要創建表的資料庫中。
C. SQL資料庫的表。怎麼同時連接3個表查詢。
可以參考下面的方法:
1、select * from 表1,表2,表3 where 表1.欄位=表2.欄位 and 表1.欄位=表3.欄位
2、select * from 表1 join 表2 on 表1.欄位=表2.欄位 and join 表3 on 表1.欄位=表3.欄位
如果沒有AND,前面就需要加括弧了。
(3)插入sql涉及多表連接擴展閱讀:
參考語句
創建新表
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)
根據已有的表創建新表:
1、create table tab_new like tab_old (使用舊表創建新表)
2、create table tab_new as select col1,col2… from tab_old definition only
刪除新表
drop table tabname
D. sql語句如何實現多個表的自然連接
inner join 只顯示符合條件的數據行,此為默認的join方式,inner 可以省略;
left join 顯示符全條件的數據行及左邊數據表中不符合條件的數據行;
right join 顯示符全條件的數據行及右邊數據表中不符合條件的數據行;
full join 顯示符全條件的數據行及左邊和右邊數據表中不符合條件的數據行;
cross join 直接將一個數據表的每一條數據行和另一個數據表的每一條數據行搭配成新的數據 行,不要on 來設置條件。
具體要看你需要哪種連接。
E. sql 怎麼通過多個條件連接2張表
實現的方法和詳細的操作步驟如下:
1、第一步,構建兩個表,然後分別插入數據,如下圖所示,然後進入下一步。
F. SQL語句中兩個表的連接
1、打開資料庫管理工具,在資料庫中新建兩個表用於測試,這里,兩個表的表結構要一樣,分別建立TEST 和 TEST1。
G. sql多表連接查詢怎麼添加其它條件
我也不知道有沒有理解你的意思
1.建表
create table #t1(
id int,
name varchar(20)
)
create table #t2(
eid int,
ename varchar(20)
)
create table #t3(
sid int,
sname varchar(20)
)
2.插入數據
insert into #t1 values(1,'a'),(2,'b'),(3,'c'),(4,'d')
insert into #t2 values(1,'ab'),(2,'bc'),(3,'cd')
insert into #t3 values(1,'abc'),(2,'bcd'),(3,'cde'),(2,'')
3.查詢
select a.id ,a.name ,b.eid ,b.ename ,c.sid ,c.sname
from #t1 a
join #t2 b on a.id =b.eid and b.ename ='bc' ----可直接+and+條件
join #t3 c on a.id =c.sid and c.sname ='bcd'
或者
select a.*,b.*,c.*
from #t1 a join #t2 b on a.id =b.eid
join #t3 c on a.id =c.sid
where b.ename ='bc' and c.sname ='bcd'-----在where後面統一加也行
結果都是: 2 b 2 bc 2 bcd
4.建議
最好全部用外連接 left join,以#t1位主表,查出#t1的所有記錄,#t2和#t3里不滿足條件的全部
用null顯示,
select a.id ,a.name ,b.eid ,b.ename ,c.sid ,c.sname
from #t1 a
left join #t2 b on a.id =b.eid and b.ename ='bc'
left join #t3 c on a.id =c.sid and c.sname ='bcd'
結果為
1 a NULL NULL NULL NULL
2 b 2 bc 2 bcd
3 c NULL NULL NULL NULL