建立数据库时,如果输入的字符超过上万,数据类型用什么呢

建立数据库时,如果输入的字符超过上万,数据类型用什么呢,第1张

用text、ntext或image

ntext

可变长度 Unicode 数据的最大长度为 230 - 1 (1,073,741,823) 个字符。存储大小是所输入字符个数的两倍(以字节为单位)。ntext 在 SQL-92 中的同义词是 national text。

text

服务器代码页中的可变长度非 Unicode 数据的最大长度为 231-1 (2,147,483,647) 个字符。当服务器代码页使用双字节字符时,存储量仍是 2,147,483,647 字节。存储大小可能小于 2,147,483,647 字节(取决于字符串)。

image

可变长度二进制数据介于 0 与 231-1 (2,147,483,647) 字节之间。

注释

用odbc向数据库写入二进制数据的问题2009年02月05日 星期四 15:34odbc/mfc 向mysql 写入二进制数据的问题

发表于:2008-10-21 18:01:33 楼主

问题描述:

向mysql添加其它类型的数据都没问题,当添加二进制数据,例如一个,程序执行正常但实际上并没有添加进去。

奇怪的是:我用mysql 的C API 向数据库中添加该后,使用 odbc/mfc 却可以很好的把它读出来。

添加二进制文件的示例代码如下:

其中rs 为结果集;m_data 的类型为CLongBinary

CFileStatus fileStatus;

CFile fp("viewppjpg",CFile::modeRead);

fpGetStatus(fileStatus);

Cnctable rs=new Cnctable(mbase);

rs->Open(CRecordset::snapshot);

rs->AddNew();

rs->m_datam_hData = ::GlobalAlloc(GPTR ,(size_t)fileStatusm_size);

size_t temps= fpRead(rs->m_datam_hData,fileStatusm_size);

rs->m_datam_dwDataLength = fileStatusm_size;

rs->SetFieldNull(&rs->m_data,FALSE);

rs->Update();

注:使用的odbc驱动为351

如有解答不胜感激。

发表于:2008-10-23 15:43:024楼 得分:0

问题已经解决,感谢各位的回答,

下面是翻阅MSDN 使用CByteArray解决上述问题,

具体原因不明,可能是兼容性问题。

代码如下:

m_data 的类型由CLongBinary 改为CByteArray;同时修改DoFieldExchange中对应的内容

CFileStatus fileStatus;

CFile fp("viewppjpg",CFile::modeRead);

fpGetStatus(fileStatus);

Cnctable rs=new Cnctable(mbase);

rs->Open(CRecordset::snapshot);

rs->AddNew();

rs->m_datam_hData = ::GlobalAlloc(GPTR ,(size_t)fileStatusm_size);

rs->m_datam_dwDataLength = fileStatusm_size;

------------------------------下面是改动的地方----------

nct->m_dataSetSize(fileStatusm_size);

fpRead(nct->m_dataGetData(),fileStatusm_size);

nct->Update();

1、select distinct(类型 ),(select max(单价) from table where 类型 =c类型 ) from table c。

2、举例:

person: {

   //

   name: 'A'

   did: 'buy a dog'};

person: {

   //

   name: 'B'}。

3、相关用法

1)# 进入数据库 admin

use admin

2)# 增加或修改用户密码(30版本用creatuser)

dbaddUser('name','pwd')

3)# 查看用户列表

dbsystemusersfind()

4) # 用户认证

dbauth('name','pwd')

5)# 删除用户

dbremoveUser('name')

6) # 查看所有用户

show users

7)# 查看所有数据库

show dbs

8)# 查看所有的 collection

show collections

9)# 查看各 collection 的状态

dbprintCollectionStats()

10)# 查看主从复制状态

dbprintReplicationInfo()

以上就是关于建立数据库时,如果输入的字符超过上万,数据类型用什么呢全部的内容,包括:建立数据库时,如果输入的字符超过上万,数据类型用什么呢、VC++打开access数据库,数据库中包含备注型字段,字段太大,提示数据被截断,出错、mongodb数据库如何查询某个字段的最大值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10189928.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存