DBD::CSV 和占位符

2023-11-29

#!/usr/bin/env perl
use warnings;
use strict;
use DBI;

my $dbh = DBI->connect( "DBI:CSV:", '', '', { RaiseError => 1 } ) or die DBI->errstr;

my $table = 'my_test_table_1.csv';
$dbh->do( "CREATE TEMP TABLE $table( id INTEGER, name CHAR(64) )" );

my $sth = $dbh->prepare( "INSERT INTO $table ( id, name ) VALUES( ?, ? )" );
$sth->execute( 1, 'Ruth' );
$sth->execute( 2, 'John' );
$sth->execute( 3, 'Nena' );
$sth->execute( 4, 'Mark' );

$sth = $dbh->prepare( "SELECT * FROM $table WHERE id > ? LIMIT ?" );
$sth->execute( 1, 2 );
$sth->dump_results;

# Bad limit clause! at /usr/local/lib/perl5/site_perl/5.20.1/SQL/Statement.pm line 88.

它看起来像一个占位符LIMIT条款不起作用。

当我使用以下命令时,如何判断 SQL 语句中的某个位置是否支持占位符DBD::CSV司机?


占位符只能用在需要表达式的地方。接下来是什么LIMIT必须是行计数(而不是表达式),因此它不能是占位符。

#!/usr/bin/perl
use warnings;
use strict;
use DBI qw( );

my $dbh = DBI->connect("DBI:CSV:", undef, undef, {
   PrintError => 0, RaiseError => 1,
} );

{
   my $sth = $dbh->prepare( "SELECT 1 LIMIT 1" );
   $sth->execute();
   $sth->finish();
   print "ok\n";
}

{
   my $sth = $dbh->prepare( "SELECT 1 LIMIT 0+1" );
   $sth->execute();
   $sth->finish();
   print "ok\n";
}

ok
DBD::CSV::db prepare failed: Bad limit clause! at .../SQL/Statement.pm line 88.
 [for Statement "SELECT 1 LIMIT 0+1"] at a.pl line 18.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

DBD::CSV 和占位符 的相关文章

  • 插入 Hive 表 - 非分区表到具有多个分区的分区表 - 无法插入目标表,因为列号/类型

    当我尝试插入分区表时 出现以下错误 SemanticException 错误 10044 第 1 23 行无法插入目标表 因为列号 类型不同 表 insclause 0 有 6 列 这 3 列已分区 我们不需要任何必须从中转储 存储的过滤器
  • 从网络源获取 R 中的数据作为数据框

    我正在尝试使用 RCurl 包将一些空气污染背景数据作为 data frame 直接加载到 R 中 该网站有 3 个下拉框 用于在下载 csv 文件之前选择选项 如下图所示 我试图从下拉框中选择 3 个值 并使用 下载 CSV 按钮将数据作
  • 需要按天分割日期时间范围

    我有一个需要根据日期时间拆分的表 输入表 ID Start End A 2019 03 04 23 18 04 2019 03 04 23 21 25 A 2019 03 04 23 45 05 2019 03 05 00 15 14 所需
  • 不带 GROUP BY 的聚合查询

    这个查询似乎在我的旧机器上完美运行 但是 在我的 MySQL 5 7 14 和 PHP 5 6 25 的新机器上 它会抛出错误 致命错误 未捕获异常 PDOException 并带有消息 SQLSTATE 42000 语法错误或访问冲突 1
  • 加密数据库字段的好方法?

    我被要求加密数据库中的各种数据库字段 问题是这些字段在读取后需要解密 我在用着Django and SQL Server 2005 有什么好主意吗 See 在 SQL Server 2005 数据库中使用对称加密 https web arc
  • 检查两个“select”是否相等

    有没有办法检查两个 非平凡的 选择是否等效 最初我希望两个选择之间有形式上的等价 但是答案在证明 sql 查询等价性 https stackoverflow com questions 56895 proving sql query equ
  • 使用Perl/DBI/MySQL/InnoDB查找外键信息

    我想以编程方式查找 MySQL 数据库中特定 InnoDB 表的外键 我正在使用 Perl 我偶然发现 dbh gt foreign key info 我刚刚尝试使用它 但似乎有点错误 它不会返回 ON DELETE 和 ON UPDATE
  • 如何搜索例程的内容/(SP-触发函数)

    我需要在数据库内所有例程的例程主体 存储过程 函数 触发器 中搜索文本 我该怎么做 Thanks SELECT OBJECT NAME object id FROM sys sql modules WHERE definition LIKE
  • MySQL中如何声明变量?

    如何在mysql中声明一个变量 以便我的第二个查询可以使用它 我想写一些类似的东西 SET start 1 SET finish 10 SELECT FROM places WHERE place BETWEEN start AND fin
  • 实现软删除的最佳方法是什么?

    目前在做一个项目 我们要对大部分用户 用户角色 实现软删除 我们决定添加一个is deleted 0 数据库中每个表的字段并将其设置为 1 如果特定用户角色点击特定记录上的删除按钮 现在为了将来的维护 每个SELECT查询需要确保它们不包含
  • Perl 三元条件运算符

    我正在尝试在脚本中编写更高效的代码 并且有时会实现三元条件运算符 我不明白为什么在循环中使用三元条件运算符时会得到额外的结果 usr bin perl use strict use warnings my array Serial 123
  • 如何在MYSQL中将整个字符串小写并保持第一个大写[重复]

    这个问题在这里已经有答案了 我的表栏目 我预期的输出会在列中发生变化 Smith Allen Doyle Dennis Baker Waker 这是我尝试过的 但不起作用 UPDATE TABLE employee SET last nam
  • 如何通过 SQL 表关联 SQL 中的实体

    我是数据库设计的初学者 我需要为项目创建数据库 我可以用面向对象的术语解释我想要做什么 值得庆幸的是 数据库专家会很友善地向我解释如何在数据库方面处理这个问题 我想创建一个与位置实体 州 城市 有关系的用户 ID 名称 实体 所以在编程语言
  • SQL Server 连接其他表中不存在的位置

    Service Asset AssetService Id Name Id Name AssetId ServiceId
  • 将数据从 R 导出到 Excel

    我试图将从 R 获得的一些结果导出到 Excel 中 但未成功 我尝试过以下代码 write table ALBERTA1 D ALBERTA1 txt sep t write csv ALBERTA1 ALBERTA1 csv your
  • SELECT max(x) 返回 null;我怎样才能让它返回0?

    运行以下命令时如何返回 0 而不是 null SELECT MAX X AS MaxX FROM tbl WHERE XID 1 假设没有XID 1的行 or SELECT coalesce MAX X 0 AS MaxX FROM tbl
  • SQL查询查找表的主键?

    我怎样才能找到哪一列首要的关键使用查询来创建表 这是重复的question https stackoverflow com questions 893874 mysql determine tables primary key dynami
  • 使用正则表达式提取两个短语之间的所有单词[重复]

    这个问题在这里已经有答案了 我正在尝试使用以下正则表达式提取两个短语之间的所有单词 b item W w W 0 2 1 one W w W 0 3 business b b item W w W 0 2 3 three W w W 0 3
  • SQL 更新 - 更新选定的行

    我正在使用 SQL Server 2008 我有一个名为MYTABLE有两列 ID STATUS 我想编写一个存储过程来返回其记录STATUS是 0 但是这个存储过程必须更新STATUS返回行数为 1 如何在单个查询中执行此选择和更新操作
  • 在 Perl 中如何用空格填充字符串的一部分?

    你更喜欢哪个版本 usr bin env perl use warnings use strict use 5 010 my p 7 33 my prompt my key very important text my value Hell

随机推荐

  • 不带小数的 LinearAxis

    我想避免我的轴中出现小数 我该怎么做 XAML
  • 如何调试 Swift PlaygroundBook?

    当我探索 Playground Book 示例代码时 例如this one 我发现运行代码非常乏味 因为 Playground Book 对代码运行位置的限制 只能在 iPad 的 Swift Playground 上运行 无法在 iOS
  • JAVA ArrayList:如何知道它是否包含字符串数组?

    import java util ArrayList public class Test public static void main String args ArrayList
  • Spring 3.1中可以和@Configuration结合使用吗

    我从 Spring 3 0 5 迁移到 3 1 因为我需要自定义 RequestMappingHandlerMapping 我在扩展 RequestMappingHandlerMapping 插件中遇到问题 我有现有的 servlet co
  • 定义一个新句柄(类似于STDOUT)

    当我注意到这一点时 我正在查看批量重定向句柄 这里是link 它提到句柄 3 9 未定义 可以由程序定义 现在我已经阅读了有关在 C 中执行此操作的信息 但我想知道这在 cmd batch 中是否可能 如果可以 它的限制 用途是什么 如果在
  • Gulp 似乎找不到指南针 mixins

    我正在尝试使用 gulp 作为 Grunt 的替代构建工具 将我的 scss 编译为 css 因为我听说它可以更快 我什至在对 scss 文件进行基本编译时都遇到问题 我尝试过使用gulp sass gulp ruby sass and g
  • Group By 子句中的无效列名错误

    我正在尝试为 rdlc 报告创建 Sp 其中我使用许多用户定义的函数进行计算 但是当我尝试在 group by 子句中使用函数别名时 会出现错误 Msg 207 Level 16 State 1 Line 14 无效的列名 CommPaid
  • 程序没有做它应该做的事 - C

    我编写了一个程序 从用户接收一系列数字 用户必须输入升序的数字 可以是4ex 1 2 2 3 7 8 0 并以 0 结尾 当然 如果没有 则会出现相应的错误消息 并且程序将关闭 我们可以确定用户会保留 Y 数组将是 如果 X 数组一切顺利的
  • 为什么两个字符串对象引用的串联不等于相同内容的字符串对象[重复]

    这个问题在这里已经有答案了 为什么下面s3 and s5 String对象不同 当s5尝试在字符串池中创建它检查内容s3已经有相同的内容了s5 refers s3字符串池中的对象 但我的假设是错误的 那么任何人都可以纠正我 String s
  • 如何修复使用 Api 时未按请求设置 Laravel 会话存储

    早些时候我尝试过这种方法堆栈溢出帖子但它在本地给出了 419 问题 api gt do not resolve Session store not set on request issue register user App Http Mi
  • Monotouch + UIWebView = 随机崩溃

    我在 iOS 5 0 iPhone 和 iPad 上使用 Mono Monotouch MonoDevelop 的最新稳定版本 我有一个 UIWebView 在模拟器中永远不会崩溃 但是在实际设备上它会随机崩溃在 EXC BAD ACCES
  • AWS::S3::Bucket:Class 的未定义方法“find”

    我正在为我的 Rails 项目实现 Amazon S3 上传器 我正在尝试访问一个存储桶 以便我可以将所有图像分配给一个变量并列出它们 当我尝试在上传控制器中查看新操作时 不断收到以下错误 undefined method find for
  • iOS UIView 旋转后获取框架

    我正在尝试获取我的尺寸UIView方向改变后 在我的视图控制器中我实现didRotateFromInterfaceOrientation 并打电话setNeedsLayout 在我看来 在我看来layoutSubviews方法中 它尝试根据
  • 用换行符分割字符串[重复]

    这个问题在这里已经有答案了 我正在尝试分割此文件中的行eng pol txt通过新行符号 n 它根本不起作用 我已经尝试过 String words strLine split n System out println Arrays toS
  • 重命名后应用存储后如何从 git“由我们添加”冲突中恢复

    我不记得我的 git local repo 是如何进入这种状态的 但情况是这样的 我在命令行上的状态显示 无需提交任何内容 工作树干净 git stash show p stash 0 显示了一些变化的差异 当我随意滚动时 并没有真正理解
  • /var/log/daemon.log 占用更多空间如何减少?

    下面是文件 rw r 1 root adm 4 4G Mar 6 09 04 daemon log rw r 1 root adm 6 2G Mar 1 06 26 daemon log 1 rw r 1 root adm 50M Feb
  • 使用scanf读取多行输入

    为班级编写程序 仅限于 scanf 方法 程序接收可以接收任意数量的行作为输入 使用 scanf 接收多行输入时出现问题 include
  • 如何根据空手道中的过滤器从 jsonarray 中删除对象

    我想根据过滤器从 json 数组中删除一个对象 尝试了下面的代码但没有成功 def json id 0a7936ed code test label test type sell id 7bc1909b2 code test2 label
  • NSTimer 精度

    我目前正在开发一个应用程序 该应用程序需要以精确的时间间隔播放声音文件 该时间间隔的持续时间是可变的 我似乎记得有人告诉 NSTimer 只是在指定的持续时间后将操作放入堆栈 而不是在指定的持续时间后运行操作 这意味着如果在它之前堆栈上有很
  • DBD::CSV 和占位符

    usr bin env perl use warnings use strict use DBI my dbh DBI gt connect DBI CSV RaiseError gt 1 or die DBI gt errstr my t