Lazarus中文社区

 找回密码
 立即注册(注册审核可向QQ群索取)

QQ登录

只需一步,快速开始

Lazarus IDE and 组件 下载地址版权申明
查看: 2451|回复: 3

lazarus+firebird程序创建数据库的方法

[复制链接]

该用户从未签到

发表于 2012-8-1 10:46:54 | 显示全部楼层 |阅读模式
控件:
    conn: TIBConnection;
    SQLQuery: TSQLQuery;
    SQLTransaction1: TSQLTransaction;

我做了一下测试,用命令create database的办法是不行的,我用这种办法实现了程序创建数据库:

conn.close;
conn.CharSet:= PChar('utf8');
conn.HostName := PChar(trim('localhost'));
conn.DatabaseName:='d:\data\testdb.fdb';
conn.UserName:='SYSDBA';
conn.Password:='masterkey';
conn.createDb;  
回复

使用道具 举报

该用户从未签到

发表于 2012-8-1 12:37:04 | 显示全部楼层
谢谢分享

这句conn.CharSet:= PChar('utf8');,感觉不要也行.记得试过存储汉字,我设为GB2312,不能正常显示,后来去掉这句就可以了
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2012-8-1 21:55:53 | 显示全部楼层

回 1楼(1234567) 的帖子

1234567:谢谢分享

这句conn.CharSet:= PChar('utf8');,感觉不要也行.记得试过存储汉字,我设为GB2312,不能正常显示,后来去掉这句就可以了 (2012-08-01 12:37) 
我觉得你可能没有理解编码问题。
如果设置了utf8编码,那么你必须在写入的时候转换到utf8编码格式。
而gb2312利用ascii进行扩展,因此写入、读出的时候当作ascii来没有关系,只要显示的时候,显示程序按照gb2312的规则来显示就好了。
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2012-8-8 13:52:09 | 显示全部楼层

回 2楼(aaa) 的帖子

aaa:我觉得你可能没有理解编码问题。
如果设置了utf8编码,那么你必须在写入的时候转换到utf8编码格式。
而gb2312利用ascii进行扩展,因此写入、读出的时候当作ascii来没有关系,只要显示的时候,显示程序按照gb2312的规则来显示就好了。 (2012-08-01 21:55) 
感谢指教.
呵呵,我是完全凭感觉,野路子.

希望能跟着师兄们走上正途.谢谢
回复 支持 反对

使用道具 举报

*滑块验证:

本版积分规则

QQ|手机版|小黑屋|Lazarus中国|Lazarus中文社区 ( 鄂ICP备16006501号-1 )

GMT+8, 2025-7-3 09:54 , Processed in 0.027107 second(s), 10 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表