问题标签 [sybase]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
5379 浏览

sybase - PowerDesigner - 防止数据库名称在生成的 SQL 中为大写

我目前开始使用 Sybase PowerDesigner 及其物理数据模型 (PDM)。

我已经设法创建了一些实体/表、列等,并且生成的 SQL(从模型创建数据库)中的情况就像我想要的那样。

但是,关于数据库名称,PowerDesigner 坚持要求它始终为大写。实际上,我没有收到任何错误消息或类似的东西,实际上我被允许输入混合大小写的数据库名称,但只要我关闭“模型属性”窗口并返回它检查,数据库代号变回大写。

我显然取消了将逻辑名称连接到代码名称的“=”按钮,因此我可以输入不同的代码名称,但它仍然不起作用(虽然它适用于表格)。

有什么方法可以在生成的 SQL 脚本中使用与我在 PowerDesigner 中指定的案例相对应的数据库名称?DBMS 类型是 SQL Server 2008(试过以前的版本,问题还是一样的)。

提前非常感谢。

0 投票
1 回答
1139 浏览

vba - 从 Excel 将日文字符插入 Sybase db

我可以在 excel 单元格中看到日语测试。我已经使用 ADO 构建了插入查询。它在数据库中插入,但日文字符简单地表示为“????” 任何帮助,将不胜感激。

0 投票
2 回答
408 浏览

c# - 在 C# 中使用计算子句调用 SQL

有人知道如何在 C# 中使用计算子句调用 SQL 命令吗?我收到内部错误 30016:

我的数据库是 Sybase 12.5.4。

0 投票
1 回答
1805 浏览

sql - 检查约束以确保字符列中的值都是数字

这类似于CHECK CONSTRAINT 的字符串只包含数字。(Oracle SQL)但我想为 Sybase 做这个。

我有一个字符列“colExp”(8 个字符)。我想设置一个检查约束以确保该列的值都是数字。

我怎样才能做到这一点?这会起作用,但它并不优雅

0 投票
2 回答
6060 浏览

paging - 如何在不制作临时表的情况下在 Sybase 中进行分页?(oracle rownum 问题)

在 Oracle 中,通常像这样查询分页。

但是,Sybase DBMS 中没有“rownum”函数。

如何在 Sybase 中进行完全相同的查询?

我找到了一些方法。

  1. 使用“行数”

    设置行数 10

    从 TABLEA 中选择 *

  2. 使用身份(制作临时表)

    从 TABLEA 中选择 *, ROWNUM=IDENTITY(8) 到 #TEMP

    SELECT * FROM #TEMP WHERE ROWNUM < #pageend# AND ROWNUM >= #pagestart#

    删除表#TEMP

这些不是我想要的。

行数设置在会话级别,我不想制作临时表。

0 投票
1 回答
211 浏览

sybase - 如何强制表选择遍历块

如何使 Sybase 的数据库引擎以非数字顺序返回未排序的记录列表?

~~~

我有一个问题,我需要在应用程序中重现错误,在该应用程序中我从按顺序生成 ID 的表中进行选择,但 ID 不是选择中的最后一个。

让我解释。

上面是3个ID。我有代码,这些将是

但是,没有检查 status = 'O' (open) 的子句。记住 Sybase 将最后返回的记录保存到一个变量中。

~~~~~

我被要求给测试团队一些会使结果不起作用的东西。如果 Sybase 在无序列表中选择上述内容,它可能会以升序出现,或者,如果数据库引擎需要更改存储数据块或一些技术魔法的东西,则顺序可能会被打乱。最初的错误是当程序返回 1234 而不是 1236 时。

有没有一种方法可以100% 保证Sybase 将搜索一个数据块并且必须加倍返回,有效地“破坏”升序搜索,并且不返回最后一条记录,而是返回任何其他记录?(除了最大值之外的所有记录都会出错,因为它们都是“关闭的”)

我想要某种神奇的 SQL 代码,以确保事情不会以完全数字顺序搜索表。理想情况下,我希望不必更改程序,因为测试团队希望看到完全相同的程序被破坏(就像敲击 aorder by id desc会捏造结果一样简单)。

0 投票
2 回答
1054 浏览

sql - 在 Sql Server 2005 中为 Create Table 语句添加锁定选项

我正忙于从 Sybase 数据库在 Sql Server 中创建表。在 Sybase 数据库中创建表时使用了“锁定所有页面”选项,在 Sql Server 2005 中创建表时如何复制此选项。

0 投票
1 回答
2095 浏览

sql - sybase - showplan 通过添加另一个表来查询大大降低了估计的 I/O

查询的应用已经改变,但原理是一样的。

4张桌子:

states - 状态列表(状态索引) stores - 商店,以及它们所处的状态(状态,商店的单独索引) store_orders - 将订单与商店联系起来(商店,订单的单独索引) order_statuses - 有订单和状态(订单、状态的单独索引)

我想计算特定状态的每个状态有多少订单。

一个查询:

select os.order_status, count(os.order_status) from stores sto, store_order so, order_statuses os where sto.state = 'PA' and sto.store = so.store and so.order = os.order group by os.order_status

在实际应用中,这里的展示计划估计 I/O 约为 500,000

但如果我这样做:

select os.order_status, count(os.order_status) from states sta, stores sto, store_order so, order_statuses os where sta.state = 'PA' where sto.state = sta.state and sto.store = so.store 等等。 order = os.order group by os.order_status

I/O 估计在 2,000 左右,我更改查询所做的只是将 states 表连接到 stores 表,并在 states 中而不是 store 中指定确切的值。

无论我指定一个显式值,还是用那个显式值加入另一个表,DBM 是否仍然需要对存储进行相同的搜索?

我试图弄清楚为什么估计的 I/O 如此之高。

我不是 DBA,但我会尽可能多地学习,因为我经常遇到这样的事情,而且我永远不知道为什么。

0 投票
29 回答
996286 浏览

sql - 当 IDENTITY_INSERT 设置为 OFF 时,无法在表“表”中插入标识列的显式值

执行以下脚本时出现以下错误。错误是什么,如何解决?

错误:

服务器:消息 544,级别 16,状态 1,行 1

当 IDENTITY_INSERT 设置为 OFF 时,无法在表“表”中插入标识列的显式值。

0 投票
3 回答
1771 浏览

sybase - KPID 在 Sybase 中是全局唯一的吗?

可以假定 KPID (as select kpid from master..sysprocesses) 是全局的并且始终是唯一的吗? (我发现对于我的小样本集KPID(n+1) ~= KPID(n) + 65536 (2^16),但我想知道我是否可以假设,以前的数据库连接 kpid 是唯一的,即使它以前的 loginame 和 spid 匹配一个新的loginamespid

干杯。

BLT。

已经回答) *B)Loginame:如何从当前的 spid 中获取 loginameloginame不是 中的列,除了具有 列的sysprocesses表之外,我找不到任何表,而且我无法以编程方式退出 sp_who。也许用于生成的sql会有所帮助..sysobjectsloginameloginamesp_who