zoukankan      html  css  js  c++  java
  • Delphi 连接mysql的功能,去除乱码, 需要设置字符集

    vDataBaseName := aConfiginiFile.ReadString('DataBaseConfig', 'DataBase', CH_IPC712Db);
    vServer := aConfiginiFile.ReadString('DataBaseConfig', 'Server', CH_Server);
    vPort := aConfiginiFile.ReadString('DataBaseConfig', 'Port', CH_Port);
    vUserName := aConfiginiFile.ReadString('DataBaseConfig', 'Username', CH_UserName);
    vPassword := aConfiginiFile.ReadString('DataBaseConfig', 'PassWord', CH_PassWord);
    G_SaveDebug := (aConfiginiFile.ReadString('Debug', 'Debug', '1') = '1');
    G_SQLitePath := vPath + vDataBaseName;

    =====================================================================

    //在创建时连上数据库
    // UniConnection1.ProviderName := 'SQLite';//这里确定为interbase 但是可以支持firebird
    // UniConnection1.Password := '';//数据库密码
    // UniConnection1.Username := '';//数据库密码
    // UniConnection1.Server := '';
    // UniConnection1.Database := G_SQLitePath;//数据库文件的位置,这里在当前目录
    // UniConnection1.Connected := True;
    // UniConnection1.Connect;

    // 在创建时连上数据库
    UniConnection1.ProviderName := CH_ProviderName;//这里确定为interbase 但是可以支持firebird
    UniConnection1.Password := vPassword;//数据库密码
    UniConnection1.Username := vUserName;//数据库密码
    UniConnection1.Server := vServer;
    UniConnection1.Database := vDataBaseName;//数据库文件的位置,这里在当前目录
    UniConnection1.Connected := True;
    UniConnection1.Connect;

    UniQuery1.Close();
    UniQuery1.SQL.Text := 'SET NAMES GB2312;';
    UniQuery1.ExecSQL();
    //当将此句注释掉的话,存入数据库的内容变为乱码
    UniQuery1.Close();
    UniQuery1.SQL.Text := 'SET character_set_client = GB2312;';
    UniQuery1.ExecSQL();
    //当将此句注释掉得话,从数据库中读取的内容为乱码
    UniQuery1.Close();
    UniQuery1.SQL.Text := 'SET character_set_results = GB2312;';
    UniQuery1.ExecSQL();
    //当将此句注释掉的话,存入数据库的内容变为乱码
    UniQuery1.Close();
    UniQuery1.SQL.Text := 'SET character_set_connection = GB2312;';
    UniQuery1.ExecSQL();


    RunSQL := TRunSQL.Create;
    RunSQL.NewProvider := True;
    RunSQL.ZConnection := UniConnection1;

  • 相关阅读:
    第 15 章 标签页和工具提示插件
    第 14 章 下拉菜单和滚动监听插件
    第 13 章 模态框插件
    第 12 章 列表组面板和嵌入组件
    第 11 章 进度条媒体对象和 Well 组件
    第 10 章 巨幕页头缩略图和警告框组件
    第 9 章 路径分页标签和徽章组件
    lock()与lockInterruptibly()的区别
    MySQL中Innodb的聚簇索引和非聚簇索引
    MySQL使用可重复读作为默认隔离级别的原因
  • 原文地址:https://www.cnblogs.com/acmexyz/p/10511505.html
Copyright © 2011-2022 走看看