lazarus连接access数据库

连接:

    用控件ODBCConnection

var
  sql: string;
begin

  ODBCConn.Driver:= 'Microsoft Access Driver (*.mdb)';
  ODBCConn.Params.Add('DBQ=D:\0fastdata\' + utf8ToSys('access数据库.mdb'));
  ODBCConn.Params.Add('codepage = UTF8');
  ODBCConn.Open;

  if ODBCConn.Connected then
    memo1.Lines.Add('odbc Conn Access is ok')
  else
    memo1.Lines.Add('odbc Conn Access is error');

  sql:='select * from 单位表';
  SQLQueryAdo.Close;
  SQLQueryAdo.SQL.Clear;
  SQLQueryAdo.SQL.Add(utf8ToSys(sql));
  SQLQueryAdo.Open;  

插入数据:
  用TSQLQuery控件

var
  sql: string;
begin
  //
  sql := 'insert into 单位表 (col1) values(''aabbcc'')';
  sql := utf8ToSys(sql);

  try
    SQLQueryCmd.SQL.Text := sql;
    SQLQueryCmd.ExecSQL;
  except
    on E: Exception do
    begin
      log('ACCESS SQL语句执行出错: '+ sql);
      memo1.Lines.Add('ACCESS SQL语句执行出错: '+ sql);
      log(E.Message);
    end;
  end; 




您好!对于Lazarus开发环境下的SQL数据库查询,您可以使用Lazarus自带的数据库连接组件TSQLQuery来实现。 首先,您需要在Lazarus中创建一个数据库连接组件,例如TSQLite3Connection或者TMySQLConnection,具体根据您使用的数据库类型而定。然后,在代码中创建一个TSQLQuery组件,并将其连接数据库连接组件。 下面是一个简单的示例代码,演示如何执行SQL查询并获取结果: ```pascal uses SQLite3Conn, SQLDB, DB; procedure ExecuteQuery; var SQLQuery: TSQLQuery; DataSource: TDataSource; begin // 创建数据库连接组件 SQLite3Connection1 := TSQLite3Connection.Create(nil); SQLite3Connection1.DatabaseName := 'your_database.db'; // 替换为您的数据库文件路径 // 创建TSQLQuery组件并连接数据库 SQLQuery := TSQLQuery.Create(nil); SQLQuery.SQLConnection := SQLite3Connection1; // 执行SQL查询 SQLQuery.SQL.Text := 'SELECT * FROM your_table'; // 替换为您的查询语句 SQLQuery.Open; // 处理查询结果 DataSource := TDataSource.Create(nil); DataSource.DataSet := SQLQuery; // 遍历结果集 while not SQLQuery.EOF do begin // 获取字段值 ShowMessage(SQLQuery.FieldByName('field_name').AsString); // 替换为您的字段名 SQLQuery.Next; end; // 释放资源 DataSource.Free; SQLQuery.Free; SQLite3Connection1.Free; end; ``` 请注意,上述示例中的数据库连接组件和查询语句需要根据您实际的数据库类型和表结构进行相应的修改。 希望这能帮到您!如果您有任何其他问题,请随时提问。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值