超长sql语句被截断?

EricaNet 2006-01-24 10:59:10
--要插入的表为
CREATE TABLE [dbo].[B_log] (
[log_id] [int] IDENTITY (1, 1) NOT NULL ,
[LogDateTime] [datetime] NULL ,
[user_id] [int] NULL ,
[user_name] [nvarchar] (11) COLLATE Chinese_PRC_CI_AS NULL ,
[client_name] [nvarchar] (21) COLLATE Chinese_PRC_CI_AS NULL ,
[client_ip] [nvarchar] (16) COLLATE Chinese_PRC_CI_AS NULL ,
[op_action] [nvarchar] (21) COLLATE Chinese_PRC_CI_AS NULL ,
[op_sqlstring] [nvarchar] (1000) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO

ALTER TABLE [dbo].[B_log] WITH NOCHECK ADD
CONSTRAINT [PK_B_log] PRIMARY KEY CLUSTERED
(
[log_id]
) ON [PRIMARY]
GO

-------------------------------------------------------
--要执行的sql语句为:op_sqlstring字段被截断
insert into b_log (LogDateTime,user_id,user_name,client_name,client_ip,op_action,op_sqlstring) values ('2006-1-23 23:19:53',1,'管理

员','MAIA2','192.168.1.95','机动车修改','veh_number=xxxxxx,struc_number=9616824,engine_number=6013126,seating=5,charact=私车,kind=小客,brand=切诺机,color=
兰,grade=,reg_date=1996-11-01,cert_date=1996-11-07,veh_settle=是,settle_date=1996-11-06,settle_end=3000-12-31,last_settle_date=2004-11-

04,next_annual_check=2006-11-01,last_annual_check=2005-11-22,next_settle_date=2006-11-06,property=,resp_number=,spe_fig=1已验内,agent=

否,who_agent=,center_insu=否,v_next_annual_insu=2005-11-09,settle_source=,emp_st_sc= -1,remark=,check_fee=0,mng_fee=240,Owner=张xxx,gender=男,birthday=1963-

08-02,ID_card=XXX1031963080XXXX,pt=13820465597,phs=,phone=0,Address=同上,Post=,id_addr=河西区大营门勤艺里(凯旋门马场道门

口),comp=,comp_phone=,comp_addr=,email=69182487,remark_owner=,sms=否,vip=否,emp_veh=50,emp_op_veh=1,op_date=2005-11-23,in_date=2006-1-23 23:19:34no_use=,no_use_date=3000-12-31,no_use_r
eason=Status=1,price_section=C,big_client=否,Insu_kind=,')
---------------------------------------------------------------
op_string字段被截断为
veh_number=xxxxxx,struc_number=9616824,engine_number=6013126,seating=5,charact=私车,kind=小客,brand=切诺机,color=兰,grade=,reg_date=1996-11-01,cert_date=1996-11-07,veh_settle=是,settle_date=1996-11-06,settle_end=3000-12-31,last_settle_date=2004-11-04,next_annual_ch
veh_number=AJ6345,struc_number=9616824,engine_number=6013126,seating=5,charact=私车,kind=小客,brand=切诺机,color=兰,grade=,reg_date=1996-11-01,cert_date=1996-11-07,veh_settle=是,settle_date=1996-11-06,settle_end=3000-12-31,last_settle_date=2004-11-04,next_annual_ch


---------如果不能执行大家调一下格式。求问,这个问题应该怎么处理?
...全文
525 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
$扫地僧$ 2006-01-25
  • 打赏
  • 举报
回复
你前台是用的什么开发语言啊!?
你显示的方式又是什么!? (是在表格的控件里显示?还是在文本框里面显示)
OracleRoob 2006-01-25
  • 打赏
  • 举报
回复
追加没有问题,保存的就是你追加的数据

是否前台定义的变量长度太短?
mislrb 2006-01-25
  • 打赏
  • 举报
回复
VB中一行最多256个字符!?--这个没有深入研究,记得好像是这样的

要加回车换行符才行吧。
EricaNet 2006-01-25
  • 打赏
  • 举报
回复
我前台用vb开发。
用循环把数据加到listview中。
If Not (IsNull(adorsX("op_sqlstring"))) Then
Itemx.SubItems(7) = adorsX("op_sqlstring") ' "操作语句", 3500
End If
-------------
adorsX("op_sqlstring") 没有被截断。
Itemx.SubItems(7) 显示出来却被截断了,为什么?
EricaNet 2006-01-24
  • 打赏
  • 举报
回复
--我就是用这句话,查B_log表
select * from (SELECT *, CONVERT(char(10), LOGDATETIME, 120) AS DT FROM B_log) a WHERE (dt = '2006-01-24') order by log_id

想把结果集返回给 前台处理。
EricaNet 2006-01-24
  • 打赏
  • 举报
回复
to:lw1a2(一刀 Blog:http://spaces.msn.com/members/lw1a2/)
你说的对。不过只能在查询分析器中经过配置参数,看到全部结果。
可是我用程序读取出来怎么为截断后的呢。就是Ado记录集中,都是截断的。

lw1a2 2006-01-24
  • 打赏
  • 举报
回复
是在查询分析器里显示256个而已,真正表里存的就是你insert的

工具-选项-结果-每列最多字符数设为2000
EricaNet 2006-01-24
  • 打赏
  • 举报
回复
白天,出去办事,没时间上网。
会的XDJM,帮下忙。先谢谢了。

34,594

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧