怎么将一条记录添加到同一数据库的两个表中 C# ASP.NET ASP.NET(C#)如何将数据同时保存到2个数据库中?

\u600e\u4e48\u5c06\u4e00\u6761\u8bb0\u5f55\u6dfb\u52a0\u5230\u540c\u4e00\u6570\u636e\u5e93\u7684\u4e24\u4e2a\u8868\u4e2d C# ASP.NET

\u5f88\u591a\u63a7\u4ef6\uff0c\u50cfformview
gridview\u7b49\u6570\u636e\u91cc\u7684\u63a7\u4ef6\u90fd\u6709\u589e\u5220\u6539\u529f\u80fd\uff0c\u521d\u5b66\u8005\u5f00\u6e90\u5c1d\u8bd5\u63a7\u4ef6\u81ea\u5e26\u7684\u529f\u80fd\uff0c\u7b49\u641e\u61c2\u8fd9\u4e2a\u540e\u5f00\u6e90\u81ea\u5df1\u901a\u8fc7cs\u6587\u4ef6\u91cc\u76f4\u63a5\u5199\u7a0b\u5e8f\u8fdb\u884c\u6570\u636e\u5e93\u8bfb\u5199\u64cd\u4f5c

\u5728Web.config\u4e2d\u7684\u4e2d\u518d\u6dfb\u52a0\u4e00\u4e2a\u8282\u70b9\u5e76\u5728connectionString\u5c5e\u6027\u4e2d\u6dfb\u52a0\u5230\u53e6\u5916\u4e00\u4e2a\u6570\u636e\u5e93\u4e2d\u7684\u8fde\u63a5\uff0c\u5728\u6dfb\u52a0\u6570\u636e\u5230\u6570\u636e\u5e93\u7684\u65f6\u5019\u5f00\u542f \u4e24\u4e2a\u6570\u636e\u5e93\u7684\u8fde\u63a5\uff0c\u5728\u6dfb\u52a0\u6570\u636e\u7684\u65f6\u5019\u6dfb\u52a0\u5230\u53e6\u5916\u4e00\u4e2a\u6570\u636e\u5e93\u3002
\u518d\u8005\uff0c\u7528\u8ba1\u5212\u4efb\u52a1\u7684\u65b9\u5f0f\u5907\u4efd\u5f53\u524d\u6570\u636e\u5e93\u5230\u53e6\u4e00\u4e2a\u6570\u636e\u5e93\u3002

第一步,执行这个脚本:在tableB中创建一个触发器
create TRIGGER [dbo].[trgInertTableA] ON [dbo].[TableB] AFTER INSERT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
declare @id int
--1.0如果这句能得到这个ID,则直接用这句
select @id=BID FROM INSERTED
--2.0如果1.0这句不能得到@id,则使用下面的2.0语句
declare @name nvarchar(100)
declare @phone nvarchar(100)
select @name=BName,@phone=BPhone from INSERTED
select @id=BID from TableB where BName=@name and BPhone=@phone
--3.0 执行插入
if not exits(select 1 from TableA where Name=@name and Phone=@phone)
begin
insert into TableA(ID,Name,Phone) values(@id,@name,@phone)
end

END

--第二步,执行插入TableB

private void AddRecord_TableB()
{
String sName=this.TextBox_Name.Text.Trim();
String sSex=this.TextBox_SEX.Text.Trim();//或者用 DropDownList ,则为ddlSex.SelectedValue;
String sPhone=this.TextBox_Phone.Text.Trim();
String sql="insert into TableB(Bname,Bphone,Sex) values(@name,@phone,@sex)";
SqlConnection cn=new SqlConnection(connectionString);
SqlCommand cmd=new SqlCommand(sql,cn)
cmd.Parameters.AddWithValues("@name",sName);
cmd.Parameters.AddWithValues("@phone",sPhone);
cmd.Parameters.AddWithValues("@sex",sSex);
if(cn.State!=ConnectionState.Opened)
cn.Open();
cmd.ExecuteNonQuery();
if(cn.State!=ConnectionState.Closed)
cn.Close();
}

C# ASP.NET将一条记录添加到同一数据库的两个表中的实现方法:
if exists(select 1 from sysobjects where name='proc_insert')
drop procedure proc_insert
gocreate procedure proc_insert
@number2 varchar(20),
@number3 varchar(20)
as
begin transaction
declare @errornum int,@number varchar(30)
set @errornum=0 insert into tb1 values(@number2,@number3) set @errornum=@errornum+@@error
set @number=@number2+CONVERT(varchar(20),@@identity) --CAST(@@identity AS varchar(30)) insert into tb2 values(@number,@number3)
set @errornum=@errornum+@@error if @errornum<>0
begin
rollback transaction
end
else
begin
commit transaction
end
goexec proc_insert 'qwe','123'

要咋个写嘛,吧数据插入B表,在查出来,插入A表,不就完了

insert into A select * from B

  • 鎬庝箞灏嗕竴鏉¤褰曟坊鍔犲埌鍚屼竴鏁版嵁搴鐨勪袱涓〃涓 C# ASP.NET
    绛旓細绗竴姝ワ紝鎵ц杩欎釜鑴氭湰锛氬湪tableB涓垱寤涓涓瑙﹀彂鍣 create TRIGGER [dbo].[trgInertTableA] ON [dbo].[TableB] AFTER INSERT AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements.SET NOCOUNT ON;declare @id int --1.0濡傛灉杩欏彞鑳藉緱鍒...
  • vb涓鍒鏁版嵁搴鐨涓鏉¤褰曞埌鍙︿竴涓浉鍚岀殑鏁版嵁搴撲腑(access鏂囦欢)_鐧惧害鐭...
    绛旓細浣跨敤2涓暟鎹繛鎺ワ紝鍏ㄩ儴鎵撳紑锛屾寜鏉℃彃鍏 濡傦細dim conn1 as adodb.connection, conn2 as adodb.connection dim sqlstr as string sqlstr = "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=456123;Data Source=" & App.Path & "\DB.mdb;Persist Security Info=True"Set conn1 = ...
  • 鍦Access鏁版嵁搴涓鎻掑叆涓鏉鏂璁板綍鏈夊嚑绉嶆柟娉?
    绛旓細3. 鍦╒BA涓娇鐢╯ql鐨処nsert into璇彞鎻掑叆鏂拌褰 璇硶澶氳褰曡拷鍔犳煡璇細INSERT INTO target [(field1[, field2[, ...]])] [IN externaldatabase] SELECT [source.]field1[, field2[, ...] FROM tableexpression鍗曡褰曡拷鍔犳煡璇細INSERT INTO target [(field1[, field2[, ...]])] ...
  • 鎬庝箞鍦sql鏁版嵁搴撴彃鍏ヨ褰(sql娣诲姞璁板綍)
    绛旓細鏂规硶姝ラ锛1銆侀鍏堟垜浠墦寮heidisql瀹㈡埛绔紝鎴戜滑鏂板缓涓涓杩炴帴锛屽鏋滆繛鎺ョ殑鏄痵qlserver鐨鏁版嵁搴锛岃閫夋嫨鏁版嵁搴撶殑绫诲瀷锛岀鍙e彿涓鑸槸1433濡傛灉鏄痬ysql鐨勬暟鎹簱锛屼竴鑸鍙f槸3306锛岃浣忥紝鍒贩浜嗭紝杈撳叆鐢ㄦ埛鍚嶈窡瀵嗙爜灏辫兘閾炬帴浜嗐2銆佹墦寮鏁版嵁搴撳悗锛屾垜浠夋嫨涓涓〃鏉ユ搷浣滐紝涓鑸〃閮芥槸鍦ㄥ乏渚х殑锛屾垜浠緷娆″睍寮锛屼粠鏁版嵁...
  • MySQL濡備綍澶嶅埗琛ㄤ腑鐨涓鏉¤褰骞鎻掑叆
    绛旓細1銆佹墦寮navicat杞欢锛屾墦寮瑕佸鍒惰〃鐨鏁版嵁搴锛屽涓嬪浘鎵绀猴細2銆佺偣鍑讳笂鏂圭殑鈥滃伐鍏->鏁版嵁浼犺緭鈥濓紝濡備笅鍥炬墍绀猴細3銆佽繘鍘讳箣鍚庯紝宸﹁竟閫夋嫨鐨勬槸瑕佸鍒剁殑琛ㄧ殑鏁版嵁搴擄紝鍙宠竟閫夋嫨鐨勫皢琛ㄥ鍒跺埌鐩爣鏁版嵁搴擄紝濡備笅鍥炬墍绀猴細4銆佹墦寮宸﹁竟鏁版嵁搴撳璞′腑鐨勨滆〃鈥濓紝閫夋嫨瑕佸鍒跺摢鍑犲紶琛紝鐐瑰嚮寮濮嬨5銆佺偣鍑诲紑濮嬶紝浼氬脊鍑涓涓妗...
  • 鎬庝箞鎶婁竴鏉℃暟鎹彃鍏ュ埌鏁版嵁搴涓煇涓瀛楁鍚嶇浉鍚岀殑璁板綍涓嬮潰?
    绛旓細瑕佺煡閬撳悜鏁版嵁搴娣诲姞涓鏉¤褰鐨勮繃绋嬫槸锛屽皢涓琛璁板綍娣诲姞鍒鎸囧畾鏁版嵁琛ㄧ殑鏈熬銆傛墍浠ュ鏋滄兂鎶婁竴鏉鏂扮殑璁板綍鎻掑叆鍒琛ㄤ腑鍏蜂綋鐨勬煇涓浣嶇疆锛岃繖绉嶆兂娉曞緢闅惧疄鐜般備笉杩囪繖浠嶄笉褰卞搷浣犺寰楀埌鐨勬渶缁堢粨鏋滐紝涓鏉QL璇彞瀹屽叏鍙互瀹炵幇瀹冿紝鑰屼笖浠呬粎鍙渶瑕佷竴涓"ORDER BY"鐨勬帓搴忓氨琛屼簡銆
  • 鎬庢牱灏涓嶅悓椤甸潰鐨勪袱涓〃鍗曠殑鏁版嵁鎻掑叆鍚屼竴鏉℃暟鎹簱璁板綍閲
    绛旓細浣犲湪鎻愪氦绗竴琛ㄥ崟浠ュ悗锛鏁版嵁搴浜х敓浜涓鏉¤褰锛屽鍚с傞偅涔堣繖鏉¤褰曞氨鏈変簡ID鍙凤紝浣犲湪绗竴涓〃鍗鏁版嵁鎻掑叆鎴愬姛浠ュ悗锛屽湪鏌ヨ杩斿洖杩欐潯璁板綍鐨処D鍙凤紝閭d箞鍦ㄨ闂浜屼釜琛ㄥ崟椤甸潰鐨勬椂鍊欙紝鎶婅繖涓狪D鍙蜂紶杩囧幓锛屽湪绗簩涓〃鍗曟彁浜ゅ埌鍚庡彴鐨勬椂鍊欏氨鍙互鎶奍D涓璧蜂紶杩囧幓锛屽湪鍚庡彴杩涜鏁版嵁搴撶殑鏁版嵁淇敼銆侽K锛
  • 鎬庢牱鐢–#璇彞鍚鏁版嵁搴涓鎻掑叆涓鏉¤褰
    绛旓細conn.Open();string strSql = "insert into moneyinf values('" + namecombox.Text.Trim() + "','" + moneytext.Text.Trim() + "')";OleDbCommand com = new OleDbCommand(strSql,conn);com.ExecuteNonQuery();conn.Close();寰涓涓鍙玬oneyinf鐨勮〃閲鎻掑叆鏁版嵁~~寰堢畝鍗曠殑锛屽氨鎸夌収琛ㄩ噷鐨勫搴...
  • ...鏂囨湰妗嗕腑娣诲姞涓鏉淇℃伅,浣夸箣淇濆瓨鍒癝QLserver鏁版嵁搴琛ㄤ腑,鎬庢牱瀹炵幇...
    绛旓細3] = txtPublishName.Text;drNew[4] = txtPrice.Text;drNew[5] = txtDiscount.Text;drNew[6] = txtFileName.Text;//鍚戣〃涓娣诲姞琛 data.Tables["Books"].Rows.Add(drNew);//灏嗘暟鎹閫氳繃鏁版嵁閫傞厤鍣ㄦ洿鏂板埌鏁版嵁搴涓 da.Update(data, "Books");鎶婅繖浜涘啓鍦ㄤ竴涓鎸夐挳浜嬩欢閲岄潰 灏卞彲浠ヤ簡 ...
  • 鐢⊿QL鍛戒护鎻掑叆涓涓褰
    绛旓細1銆鍦ㄦ暟鎹簱涓缓绔嬩竴寮爐est琛紝鍙互鐪嬪埌test琛ㄤ腑鏈塱d,name,second涓変釜瀛楁锛宨d璁剧疆涓鸿嚜鍔ㄩ掑锛2銆佽緭鍏モ渋nsert into test(name,second) values(null,null)鈥漵ql璇彞锛岀偣鍑昏繍琛岋紝濡備笅鍥炬墍绀猴細3銆佽繍琛屼箣鍚庯紝鍙互鐪嬪埌test琛ㄦ彃鍏ヤ簡涓鏉$┖璁板綍锛屽涓嬪浘鎵绀猴細4銆佷篃鍙互鎻掑叆涓鏉¤褰鏌愪釜瀛楁涓虹┖鍊硷紝杈撳叆...
  • 扩展阅读:如何把同名的排在一起 ... 两列乱序数据一一对应 ... 一键提取表格数据 ... 一个表格相同数据汇总 ... 同一姓名下数据合并 ... excel自动提取对应数据 ... 同一个名字的数据求和 ... 同一个人多条数据汇总 ... 提取同一姓名下的所有数据 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网