34,594
社区成员
发帖
与我相关
我的任务
分享
--> 生成测试数据表: [tb]
IF OBJECT_ID('[tb]') IS NOT NULL
DROP TABLE [tb]
GO
CREATE TABLE [tb] ([ID] [int],[ParentID] [int],[Name] [ntext],[Money] [int])
INSERT INTO [tb]
SELECT '1',NULL,'同业信息','50' UNION ALL
SELECT '2',NULL,'决策分析','0' UNION ALL
SELECT '3','2','客户分析','10' UNION ALL
SELECT '4','2','订单分析','20' UNION ALL
SELECT '5','2','销售分析','10' UNION ALL
SELECT '6','2','会员分析','20'
--SELECT * FROM [tb]
INSERT tb SELECT 7,3,REPLICATE('会员分析',4000),100 FROM tb
ALTER TABLE tb ALTER COLUMN [Name] NVARCHAR(4000)
GO
SELECT * FROM tb
/*
ID ParentID Name Money
----------- ----------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -----------
1 NULL 同业信息 50
2 NULL 决策分析 0
3 2 客户分析 10
4 2 订单分析 20
5 2 销售分析 10
6 2 会员分析 20
7 3 会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析 100
7 3 会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析 100
7 3 会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析 100
7 3 会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析 100
7 3 会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析 100
7 3 会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析会员分析 100
(12 行受影响)
*/
就是长度大于4000都可以测试通过。--> 生成测试数据表: [tb]
IF OBJECT_ID('[tb]') IS NOT NULL
DROP TABLE [tb]
GO
CREATE TABLE [tb] ([ID] [int],[ParentID] [int],[Name] [ntext],[Money] [int])
INSERT INTO [tb]
SELECT '1',NULL,'同业信息','50' UNION ALL
SELECT '2',NULL,'决策分析','0' UNION ALL
SELECT '3','2','客户分析','10' UNION ALL
SELECT '4','2','订单分析','20' UNION ALL
SELECT '5','2','销售分析','10' UNION ALL
SELECT '6','2','会员分析','20'
--SELECT * FROM [tb]
ALTER TABLE tb ALTER COLUMN [Name] NVARCHAR(4000)
GO
SELECT * FROM tb
/*
ID ParentID Name Money
----------- ----------- ------------------------
1 NULL 同业信息 50
2 NULL 决策分析 0
3 2 客户分析 10
4 2 订单分析 20
5 2 销售分析 10
6 2 会员分析 20
(6 行受影响)
*/
NTEXT可以改啊declare @s nvarchar(500)
declare c cursor for
select 'alter table ['+a.name+']'+ ' alter column ['+b.name+'] nvarchar(4000)'
from sysobjects a
join syscolumns b
on a.id=b.id
and type_name(b.xtype) in('text','ntext')
where a.xtype='U '
open c
fetch next from c into @s
while @@fetch_status=0
begin
exec(@s)
fetch next from c into @s
end
close c
deallocate c
数据库如果是>=SQL2005,把nvarchar(4000)改为nvarchar(max)