我想创建一个最大(足够大)的数据类型,我希望将内存分配给该新变量,而不试图在其中插入内容。我需要它用于测试目的。
我以为我可以使用
varchar(max)
但当然var代表变量,如果没有插入值,那么它会为我的varchar分配零内存。然后我想只使用char(max),但这似乎不适用于TSQL。
有什么建议吗?
答案 0 :(得分:0)
在BaconBits建议之后我最终使用了:
char(7000)
似乎7,000是tsql中char的最高定义。允许的最大表行大小为8060字节,您还需要考虑7个字节的内部开销。
问题范围之外: 当我尝试使用char(7001)时,它没有说出来,"创建或改变表格' myTest'失败,因为最小行大小为14810,包括7个字节的内部开销。这超过了允许的最大表行大小8060字节"。我认为编译器正在做一些它没有告诉我们的事情,因为7001字节加上7字节的开销不大于8060字节。