进出口总额英文缩写:ASP--SQL我写的字段太多了,就一部分写不进去,一部分写得进去,是为什么呀??

来源:百度文库 编辑:神马品牌网 时间:2024/04/28 08:14:50
我想知道是不是在insert into的时候,字段多少也有限制?
我写的字段太多了,就一部分写不进去,一部分写得进去,是为什么呀??

程序如下:

for i=0 to count_element-1
sqlstr(i)="insert into Table1(UserID,dn,fee,reg_date,end_date,PDNS,IP1,SDNS,IP2,company,contact,tel,fax,email,address1,address2,city,state,country,zip,administrator,company_a,address3,address4,city_a,state_a,country_a,zip_a,tel_a,fax_a,email_a,contact_t,company_t,address5,address6,city_t,state_t,country_t,zip_t,tel_t,fax_t,email_t,contact_b,company_b,address7,address8,city_b,state_b,country_b,zip_b,tel_b,fax_b,email_b)values('"&UserID&"','"&domain_db(i)&"','"&fee(i)&"','"®_date&"','"&end_date&"','"&pdns&"','"&ip1&"','"&sdns&"','"&ip2&"','" & rcompany & "','" & rcontact & "','" & rtel & "','" & rfax & "','" & remail & "','" & raddress1 & "','" & raddress2 & "','" & rcity & "','" & rstate & "','" & rcountry & "','" & rzip & "','" & administrator & "','"& company_a &"','" & address3 & "','" & address4 & "','" & city_a & "','" & state_a & "','" & country_a & "','" & zip_a & "','" & tel_a & "','" & fax_a & "','" & email_a & "','" & contact_t & "','" & company_t & "','" & address5 & "','" & address6 & "','" & city_t &"','"& state_t &"','"& country_t &"','"& zip_t & "','" & tel_t & "','" & fax_t & "','" & email_t & "','"& contact_b &"','" & company_b & "','" & address7 & "','" & address8 & "','" & city_b & "','" & state_b & "','" & country_b & "','" & zip_b & "','" & tel_b & "','" & fax_b & "','" & email_b & "')"

conn.execute(sqlstr(i))
next
里面的'"®_date&"'应该是'"& reg_date &"'
百度给我发错了的哈!

各位多帮忙!!!

先打开再写???????说具体点嘛!谢谢

三楼的:你说的sql语法只能用在sql数据库中呀!我是用的Access数据库呀!不行!

现在我的问题在一楼的提示测试方法下解决的,不过还是有点不明白,为什么用我命名的email_t,email_b,rcompany,rzip........等等的不能从request.form中得到值,而命名为PDNS,IP1,SDNS,IP2就没有问题,是为什么呀?
后来我一测试才知道是它们没得到值,然后就改了个名字,就得到值了!不知道是为什么?email_t,rcompany等它们又不是保留字!

我以前是用你的这种方法存储数据或修改数据,但是如果在输入时出现次序问题,非常容易出错,建议不要用这种方法。给提供一个代码:
<%
Set rs=Server.CreateObject("ADODB.Recordset")
rs.Open "Select * From 数据表 ",conn,3,3
rs.addnew
rs("字段1")=变量1
rs("字段2")=变量2
rs("字段3")=变量3
.............
rs("字段n")=变量n
rs.update
rs.close
set rs=nothing
%>
conn是数据库连接对象,字段次序是可以随便的。

在conn.execute(sqlstr(i)) 前加上
response.write sqlstr(i)
输出SQL 看看,是不是所有的变量都有值,肯定你那有的变量没有赋值
然后根据SQL 语句判断就好判断了

楼上ikite的调试方法很不错,我也经常用.你可以试一下,如果输出时出错,就说明:字符串连接有误,对于这个sql语句,你可以分开几行写就会清楚点.如:
sqlstr(i)="insert into Table1(UserID,dn,fee,reg_date,end_date,PDNS,IP1,SDNS"
sqlstr(i)=sqlstr(i)+",IP2,company,contact,tel,fax,email,address1,address2,city,state,country,zip,administrator,"
.......
这样可以分段检测值,但比那个直接赋值要多计算好多次,有点浪费内存,但也有解决的办法,就是如果这样正确的话,你再把 sqlstr(i)=sqlstr(i)+....去掉,所有字符串直接连起来,即改成原来的直接赋值就可以了!

不用这种方法写入数据库
先打开数据库,在往里写