vc++读取MYSQL数据库表字段名乱码?

vc++读取MYSQL数据库表字段名乱码?,第1张

你这不是乱码,而是二进制数据来罢啦,得进行转换.

为什么你要用blob呢?

blob是二进制数据,且你数据读取时,还要必须通过程序在外面写代码进行转换才能正常显示,多麻烦啊

就算你的内容很多,为什么你用blob却不用text?

blob与text的最大存储范围都是2的16次方个字节,一样大呢。

你什么内容那么大?我觉得varchar类型就足够了吧?varchar最大存储范围是65535个字节,这还不够?

如果是db2 的表名:

list tables

得到每一个表的详细信息字段名,字段属性(类型,文字长度,备注)

describe table 具体的表名

平时我就这么获得这些信息

我的做法是:

a.sql是静态的,一个语句无法实现多种功能。需要一个动态变化的语句。

b.pl/sql可以生成动态语句,但是无法直接select 出结果。

如:

create or replace procedure selectx

( v_field_nam in varchar2

)

is

begin

execute immediate 'select '|| v_field_nam ||' from dual '

end selectx

/

c.利用'&' 的值替换功能,也可以实现你要的效果,

例如:

--1.建立测试表:

create table t_mytable

(

c1 number

,c2 number

)

--2插入样本数据:

insert into t_mytable

select 1 , 2 from dual

commit

insert into t_mytable

select 3 , 4 from dual

commit

pzw>select * from t_mytable

1 2

3 4

--带输入参数的sql语句:

pzw>select c&num from t_mytable

Enter value for num: 1

old 1: select c&num from t_mytable

new 1: select c1 from t_mytable

1

3

2 rows selected.

pzw>select c&num from t_mytable

Enter value for num: 2

old 1: select c&num from t_mytable

new 1: select c2 from t_mytable

2

4

2 rows selected.

如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!

vaela


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

原文地址:https://54852.com/sjk/10029300.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存