Sql server 什么';这是在数据库中存储标题的最佳方式,以便在不使用前导“的情况下进行排序;",&引用;A「;

我经营(目前正在彻底检修)一个关于戏剧的网站(njtheater.com,如果你感兴趣的话) 当我从数据库中查询剧本列表时,我希望“威尼斯商人”在“M”下排序。当然,当我显示剧名时,我需要在前面显示“the” 设计数据库以处理此问题的最佳方法是什么 (我使用的是MS-SQL 2000)将标题存储在两个字段中:title-PREFIX和title-TEXT(或类似字段)。然后在第二列上排序,但显示两个列的连接,中间有一个空格。我自己的解决方案是在数据库中创建三列 article varchar

Sql server 如何在Linux中为ODBC创建DSN?

我正在研究一个Linux应用程序,该应用程序应该使用DSN连接到SQL Server。连接停止工作,我找不到正在使用的凭据(我只知道DSN的名称) 我熟悉Windows中的DSN,但它们是如何创建的,它们在Linux中存储在哪里?只需查找您的odbc.ini文件即可。默认情况下,它应该在/etc下,但我想它可能会因Linux的不同而有所不同 是Linux/Unix的通用指南 希望这有帮助。对于unixODBC,DSN列在/usr/local/etc/odbc.ini中。已安装的ODBC驱动程序将

Sql server SQLServer2005和UTF8 我试图建立一个SQLServer 2005,它将使用C++和ODBC访问(数据读取将以XML文件发送)。因此,我想从数据库中读取数据(最好是utf-8),编写一个XML文件并发送它

我一直在浏览,还没有找到一种方法来设置数据库和表以使用utf-8(如MySQL)。我读到sqlserver内部使用UCS-2 是否可以为使用utf-8设置SQLServer2005数据库(或表或字段) 如果没有,建议采用哪种方法 提前感谢您希望MSDN的以下文章能有所帮助。我在2000年遇到过类似的问题,但我从文章中看到,他们已将其更新为适用于SQL 2005。您可以请求unicode数据(UTF16或UCS2),并在需要时将其转换为UTF-8 UTF-8是完整的unicode格式,转换速度快且

Sql server SQL Server:防止存储过程中的脏读取

考虑一个SQL Server数据库及其两个存储过程: *一,。在事务中执行三件重要事情的过程:创建客户、调用存储过程执行另一次插入,以及有条件地插入具有新标识的第三条记录 BEGIN TRAN INSERT INTO Customer(CustName) (@CustomerName) SELECT @NewID = SCOPE_IDENTITY() EXEC CreateNewCustomerAccount @NewID, @CustomerPhoneNumber

Sql server 备份无法完成命令备份数据库

备份未能完成命令备份数据库。。。带差速器。查看备份应用程序日志以了解详细信息。 我在SQL Server日志文件查看器中看到此消息。备份应用程序日志在哪里?我想这意味着服务器上的应用程序事件日志 是否正在使用TSQL脚本通过SQLAgent执行此备份作业?如果是这样,则需要在作业步骤中指定包含备份TSQL的输出文件 在左侧窗格的作业步骤中,应该有常规和高级。单击Advanced,在标题Transact-SQL脚本(T-SQL)下有一个输出文件框。在此处输入任何有效的文件名(它不需要存在,它将动态

Sql server SQL Server日期与smalldatetime

我有一系列表格,它们在不同的层次上整合数据:季度、小时、每日和每月。除此之外,还有一个包含“原始”数据的基表,这个表还包含一些额外的列。合并表都有相同的列 基本表、季度表和小时表使用类型为smalldatetime的列为数据添加时间戳。此列也将在小时和每日表中提供,但我当然不需要这里的时间方面 为了简单起见,我想在这里也使用smalldatetime数据类型,但是对于列使用日期数据类型可能会提高性能 就性能而言,这两种类型之间真的有很大区别吗?通常最好使用所需的最小数据类型。您不应该使用varc

Sql server SQL Server XML类型从任何标记中选择属性=X的位置

将正确检索节列中具有以下值的记录: select * from tablename where CONVERT(xml, Sections).value('(/sections/section/@value)[1]', 'varchar(1)') = 'f' 如果XML标记有多个条目,则需要使用.nodes()XQuery方法: XQuery [value()]: 'value()' requires a singleton (or empty sequence), found operand

Sql server 获取值“;18.1818“;在SQLServer中使用除法?

如何从SQLSERVER获取值“18.1818” SELECT (2/11)*100 我使用了这个代码,但它给了我0为什么 在计算器里,它给了我“18.1818” 我的代码中有什么遗漏吗?您得到的是零,因为您正在执行 尝试将一个整型常量更改为a,您将得到预期结果: SELECT 2./11*100 -- To simplify the expression, I removed the parentheses 试试看。将小数放在那里会使SQL Server使用decimal数据类型,而不是

Sql server 如何执行长动态查询(大于4000个字符)-再次

注意:我正在SQL Server 2008 R2下运行 我花了很多时间在这个站点和其他站点上阅读了几十篇关于如何在查询超过4000个字符的情况下执行动态SQL的文章。我已经尝试了十几种解决方案。共识似乎是将查询拆分为4000个字符的变量,然后执行以下操作: EXEC (@SQLQuery1 + @SQLQuery2) 这对我不起作用-查询在@SQLQuery1的末尾被截断 现在,我看到了一些示例,人们如何通过使用复制一堆空间等来“强制”一个长查询,但这是一个真正的查询,但它变得更复杂一些 我有

Sql server 如何查询包含<;无法读取数据>;在专栏里?

我有一个SQL表,其中一些列在SQL Server Manager中查看时包含。有人知道如何查询?我可以使用update table set column=NULL(其中key='value')单独修改此列中的数据,但如何查找是否存在包含此错误数据的其他行?如上所述,这些错误通常发生在未保留精度和比例的情况下。如果您对SSI感到满意,则可以获取损坏的行。使用Martin Smith创建的值 CREATE TABLE T(ID int ,C DECIMAL(38,0)); INSERT INTO

Sql server 执行存储过程MS SQL 2008时,看到的字符串或二进制数据将被截断

我在MS SQL 2008中有一个存储过程,它编译时不会出错,但当我执行该存储过程时,会收到错误消息“字符串或二进制数据将被截断”。不幸的是,我无法追踪这是在哪里发生的 当我开发存储过程时,我首先测试了查询,它成功了 因此,如果有人能告诉我发生这种情况的地点和原因以及如何解决,我将不胜感激: ALTER PROCEDURE [dbo].[sp_Material_Validation] @ValidType varchar(MAX), @MaterialID varchar(MAX) AS BE

Sql server 用于2列的SQL Server子查询优化

我有一个父表,其中有两个对子表的外键引用。我正试图提出一种优化的TSQL(SQLServer2008),它将子列“轴心”到一行中。下表结构和所需的结果集结构。什么是最好的方式使这项工作 谢谢 set nocount on declare @parent table ( parentid int , parentword varchar(3) , childid int , childotherid int ) insert into @parent values ( 0 , 'a' , 1 ,

Sql server 为什么我的光标记录了1个额外的计数?

我创建了一个带有光标的函数来计算另一个表中的所有主菜。 当我打印dbo.cursorEnroll()时 当我桌上只有10道主菜时,我得到了11道作为输出。 @@FETCH=0应表示FETCH成功,因此应仅将STUDENTSENROLL设置为10次。我不知道这个额外的计数是从哪里来的 免责声明:我知道这不是计算表中条目数的最佳方法。然而,我只是在学习和练习使用游标 CREATE FUNCTION dbo.cursorEnroll () RETURNS INT AS BEGIN

Sql server 获取表中所有列的信息(特别是主键)

我尝试获取表中所有列的信息 关于类型,名称列的示例信息,特别是关于主键的信息,但缺少 我用 它不包含有关主键的信息。如何得到那份感谢像这样的东西怎么样 SELECT * FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE OBJECTPROPERTY(OBJECT_ID(constraint_name), 'IsPrimaryKey') = 1 AND table_name = 'TableName' 也可以试试 SELECT i.name AS I

Sql server 当日期为日/月/年格式时,sql server中出现意外的日期格式

我在excel工作表中有要导入sql server的数据。excel工作表中的数据包含一些日/月/年格式的日期。sql server允许我按原样导入日期,并附加世纪,使之成为完整的四位数年份yyyy-mm-dd但在某些情况下,它猜对了,而在某些情况下,它猜错了 例如,我有一个日期列,其值如下 01/01/99 01/09/84 01/07/62 03/03/48 sql server为前三个值添加了正确的世纪前缀,但为sql server中添加的最后一个值添加了正确的世纪前缀,即2048-03

Sql server 使用TSQL for SQL Server,有没有办法快速限制查询中涉及的行?(我不是指返回的行)

场景 想象一下,我有一位名叫“鲍勃”的客户,他在过去几年里订购了数百万件商品。我想知道每份订单的平均数量。但是,如果扫描的行数超过X,我只想停止处理 示例 SELECT customers.CustomerName, AVG(orderItems.QuantityOrdered) AS AverageQuantityOrdered FROM dbo.Customers customers INNER JOIN dbo.Orders orders ON or

Sql server 我该如何做“相当于”的事#定义某个值5“;在transact-sql中?

我必须制作一个长的transact-sql脚本,在这里我必须使用相同的值 很多次,我不想每次都写文本值,而是使用C中的预处理器宏 关键是,我将多次运行此脚本,使用不同的“SomeValue”值,我只希望在脚本的顶部有一个文本值,我可以看到它并根据需要更改它,然后再次运行脚本。您是否尝试在脚本的最开始使用默认值声明该值,比如:DECLARE@SomeValue int=5虽然不能在SQL中定义常量,但可以创建一个变量: DECLARE @SomeValue INT = 5 SELECT * FR

Sql server 获取cfquery中返回的指定行的计数

我知道您可以获得查询中返回的项目数,但是。。。 问题:是否可以获取具有特定值的行的记录计数,例如 <cfset totalReturned = myquery.recordcount> <cfset totalReturnedComplete = myquery.recordcount (where status = "Complete")> 我知道上述将无法工作,但我正在寻找类似上述代码的东西 您有两个选择。您可以使用在status=“Complete”时递增的

Sql server SQL Server:正则表达式ASCII删除

正在寻找进行区分大小写搜索的方法 CREATE FUNCTION [dbo].[fn_StripCharacters] ( @String NVARCHAR(MAX), @RemoveFollowing VARCHAR(255) ) RETURNS NVARCHAR(MAX) AS BEGIN SET @RemoveFollowing = '%['+@RemoveFollowing+']%' WHILE PatIndex(@RemoveFollowing, @

Sql server &引用;csv文件的大容量加载数据转换错误

我试图导入.csv文件,但最后一列出现“批量加载数据转换错误”。文件看起来像: "123456","123","001","0.00" 我尝试了以下行终结者: ROW TERMINATOR = "\"\r\n" 什么都没用。关于是什么导致此记录出现此错误,您有什么想法吗?谢谢根据下面给出的示例,删除csv中的引号,并将终止符用作“\r\n” 执行大容量插入时始终使用xml格式。它提供了几个优点,如数据文件的验证等 格式文件将数据文件的字段映射到表的列。使用bcp命令或大容量插入或插入或Tra

Sql server SQL SERVER在子查询中复制了行数据

我想按投票类型和确定的年份,按地区分组,提取一个人在投票中的结果 以下是表脚本和一些示例数据: /****** Object: Table [dbo].[ANSWERS] Script Date: 09/09/2015 7:08:45 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[ANSWERS]( [FK_QUESTION] [int] NOT NULL, [CH

Sql server 如何让SchemaSpy使用jTDS连接到MS SQL Server

我试图连接的数据库是“DEV_A”,如下图所示 我正试图让SchemaSpy使用JTD连接到它。我如何用鞋钉固定这些部件: dbs02 吴女士2012 德乌阿 进入SchemaSpy/jTDS要求我提供的这些参数: -主机 -db -port(我想我必须将其设置为1433) -u(用户) 试试这个 java -jar "C:\path\to\schemaSpy_5.0.0.jar" -t "C:\path\to\mssql-jtds.properties" -dp "C:\path\to

Sql server 需要在现有SQL语句中进行修改

我有下面的SQL查询,它根据单个员工的ID显示特定公司所有员工的列表 select TU.ApmId as 'ApmId', TU.UserId as 'PayRoll Id', TU.UserName as 'Employee Name', P.ParLongDesc as 'Company Name' from smart2uat.dbo.employee_mast TU, smart2uat.dbo.company_mast P where TU.ParID = P.PA

Sql server 无法在Excel中使用传递查询

我已经搜索了多个论坛好几天了,但仍然卡住了。希望有人能给我们点启示 我对MS Office和本机SQL之间的SQL语法差异越来越感到沮丧,并且我一直相信使用传递查询将允许我使用本机SQL。我尝试了来自不同论坛的多个建议来创建传递查询,但我仍然面临查询中的Office(语法)错误 下面是我的代码的一个简单示例,由于ISNULL语法,Excel/VBA不喜欢它。请注意,问题不在于ISNULL本身,我知道如何解决这个问题。这只是一个例子。问题是它应该在本机SQL中工作(在SQLServerManage

Sql server 顺时针旋转表格中的列值

我试过了,但不知道 如果有人知道答案,请为答案添加一些解释………请尝试,这可能有助于您解决问题 I have a table like this c1 c2 c3 1 2 3 4 5 6 7 8 9 I need output like this...... c1 c2 c3 9 1 2 3 4 5 6 7 8 你需要这个特定的案例(3x3)还是一个通用的,

Sql server SQL Server:选择';工作日';在'中传递日期;ddd';格式

如何通过在SQL Server中传递“ddd”格式来检索“工作日”部分 例如,如果我通过'tue',响应将是3,因为 1-星期日 2-星期一 3-星期二 。。。像那样 我通过执行以下查询获得当前日期的“工作日” select DATEPART(WEEKDAY, GETDATE()) 你可以尝试类似的方法 SELECT * FROM ( SELECT 1 PK ,'Sunday' Value UNION SELECT 2,'Monday' UNION SELEC

Sql server 存储过程何时返回结果集

存储过程何时返回结果集的规则是什么 如果我在底部附近添加一个SELECT语句,它将作为另一个结果集返回 但是我在开头添加了一个SELECT,然后它不会在结果集中返回 在什么情况下,SELECT将作为结果集返回?如果后面跟着其他语句,则似乎不会返回,哪些语句?存储过程将返回最后一个选择作为结果 它不包括选择进入或使用选择设置变量 您可以使用UNION返回多种结果,并使用辅助字段分隔结果 查看一下存储过程可以返回多个结果集 如果您正在使用来自前端应用程序(如asp.net)的存储过程,则可能必须遍历

Sql server 在SQL函数中添加两个查询

我试图创建一个如下所示的函数,本质上我需要查询两个货币值,然后将它们相加并返回结果。可能吗 谢谢 CREATE function [dbo].[fn_manualpricing2-NEW](@type varchar(50),@capid int,@milespa int, @maintained bit, @term int, @product varchar(50), @funder varchar(50)) returns money as BEGIN RETURN ( SELECT T

Sql server 插入MongoDB时的MS SQL

我使用的是填充速度很快的MS SQL数据库,现在我需要保留MS SQL数据库,但是(一个表)中的所有数据都需要它才能移动到MongoDB 所以它应该这样做 在MS SQL表中发生insert之后,它应该自动将数据移动到MongoDB。 我的意思是插入的行应该自动插入到MongoDB,类似于备份 有什么指导方针吗?谢谢。您是否希望只安装mongoDB,然后以某种方式将其与MS-SQL连接起来,然后所有插入MS-SQL的内容也会在mongoDB中结束 恐怕是这样。那不行 当您“在MS SQL表中插入

Sql server 如何在Windows上构建IVR

我需要在Windows上建立一个IVR系统 我在windows上安装了asterisk win32,并且能够创建拨号计划。我能够从数据库(MSSQL)中读取数据。在Windows上配置asterisk时遇到的唯一问题是将文本转换为语音。每次使用Festival时,我都会看到“Festival\u客户端:连接到服务器失败”。我甚至使用了googletts.agi,安装了sox交换机和mpg123,但我听不到任何声音 因此,请帮助我解决这个问题,或者如果有一个替代星号,可以连接到MSSQL,我可以使

Sql server SSIS错误:在foreach lop中分配给变量的值的类型(空)

我有一个简单的SSIS任务,从平面文件中获取数据,分配给变量,并执行一个数据流任务到odbc源,以放入平面文件目标 以下是我采取的步骤: 1) 第一个数据流任务 创建类型为Object的变量 在数据流任务中,源是fla文件源,目标是记录集目标 (二) 在VariableName下拉列表中选择您的变量 创建Foreach循环容器: 在枚举器设置中选择Foreach ADO枚举器 作为ADO对象源变量,从下拉列表中选择记录集变量 在变量映射中,将值分配给索引为0的变量 (三) 在forea

Sql server 如何在没有其他排序的情况下合并联合排序的数据集

我试图为下游进程获取一个有效的数据源,但生成的查询计划在传递任何内容之前会尝试缓存整个输出 我的输入数据是一个具有以下内容的表: ID,Attribute1,Attribute2,Attribute3,otherID - Clustered index on ID(not unique) - OtherID is unique) about 10M rows, output query has up to 50 rows per ID, but 7 is typical 有一些辅助表,每个

Sql server 文件和数据库设计

我想主持用户上传到网站的图像 然而,我不知道如何将其存储在网站数据库中。 我知道如何使用SQL,但是在SQL server上存储1mb+图像似乎不是一个好主意 我的问题是:如果你有一个上传图像的帐户系统,你会在web服务器上创建某种文件系统,并与SQL数据库一起使用吗 例如,在Web服务器上,您将创建一个/accounts文件夹,其中包含数千个包含图像文件的文件夹。然后使用SQL查询等查找用户名和相关文件夹 抱歉,如果这是一个愚蠢的问题,我只是不知道该搜索什么来了解更多关于这类主题的信息 在数据

Sql server 如何在LIKE子句中转义方括号?

我正在尝试使用like使用存储过程筛选项目。该列是一个varchar(15)。我试图筛选的项目名称中有方括号 例如:WC[R]S123456 如果我执行类似“WC[R]S123456”的,它将不会返回任何内容 我找到了一些关于将ESCAPE关键字与LIKE一起使用的信息,但我不知道如何使用它将方括号视为常规字符串 LIKE 'WC[[]R]S123456' 或 应该有用。以下是我实际使用的: like 'WC![R]S123456' ESCAPE '!' 如果需要搜索特殊字符,如%和_,通

Sql server 在sql中插入大型txt

我需要将多个“大”txt文件插入SQL server,这将是我第一次处理这么多数据 我的同事说,我工作场所目前的方法是导入/导出向导,每个表平均需要一周左右的时间(我认为这太多了) 最大的三个表的行数在7000-14000万行之间,列数在50-150列之间 我一直在读bcp/bulkinsert,但不知道如何实现,哪一个更快。我唯一得到的是,插入带有约束的数据比较慢,应该在创建表之后添加它们 所以我的问题是:哪种工具更适合执行任务?我可以做些什么来提高性能?最后,我相信导入/导出向导在幕后使用b

Sql server 如何从SSIDB下载SSIS包

我对SSIS还是相当陌生的。我已经了解了如何通过连接到Integration Services从服务器下载软件包。如何从SSIDB下载软件包?背景:我们有很多以前的人创建的包。所有软件包都应保存在共享驱动器上的相同文件夹结构中。但是,在某些情况下,数据库中的包比共享驱动器上的包更新。我希望能够查看已安装的软件包,以查看它们是否与共享驱动器上的软件包匹配,以及已安装的版本是否较新,并编辑该版本。谢谢 这里有几个选项可以从SSIDB下载包(项目)太棒了!!非常感谢!!

Sql server SSIS表达式问题

我有一个文件夹,我在其中创建了许多嵌入日期的文件(日期来自输入文件,例如297-20180128.exp)。我的文件夹中有Data20180128.txt和Footer20180128.txt以及许多其他文件 我想将包含日期的所有文件(20180128)移动到存档文件夹中。我已经为每个文件枚举器使用设置了一个FOREACH循环容器。在我的容器中,我有一个文件系统任务来移动文件 我的问题是让循环找到我想要的文件。我有日期(来自名为date的变量中的输入文件)。在集合的Files:框和容器的File

Sql server 如何将密钥从一个数据库插入到另一个数据库?

下面是我将值从AdventureWorks插入自定义数据库的代码。 我也需要从AdventureWorks传输标识符,但不允许复制标识符。所以我认为使用distinct和identifier就足够了,但在插入重复项时仍然会出错 如果你能评论并告诉我我做错了什么,我将非常感激。 谢谢大家! 以下是我的全部尝试: “关于插入重复项”的错误是什么?运行Select语句并查看数据。你应该在那里看到重复。哦,我在pastebin链接中发布了错误消息,它违反了主键约束“PK_ProizvodID”。无法在对

Sql server 无法使用具有readonly的Listerner地址访问SQL Server

我有两个SQL Server实例作为AlwaysOn主副本运行。现在我想在副本中设置连接读取数据库。我刚刚按照以下说明设置了SQL Server: 现在一切都好了。但如果我不使用参数readonly,我可以通过使用外部侦听器地址来访问SQL Server。在内部网络中,这是可以的 外部网络 sqlcmd -S <IP Listerner> -U <username> -P <password> -d <db name> -K readonly --

Sql server 使用带有count和group by的别名

我使用的是SQL Server Management Studio 2014,并编写了计算我使用的数据库的每个类别中的子类别数的代码(见下文) 但是,尽管代码可以工作,但它会在一个列中返回结果,该列没有列名称 我试图在代码中添加一个别名,例如在下面的每一行末尾添加NumberOfSubCats(除了“FROM”行),但没有成功 有人知道我如何向未知列名添加别名吗 SELECT COUNT(DISTINCT SubCategoryName), CategoryName FROM v_Enterpr

Sql server 如何在SQL Server中快速执行此顶级查询?

这是我的疑问: SELECT top 1 w.WONumber, * FROM TSP_TSR_Job t left join wsm_WorkOrderSchedule w on w.tsrjobid = t.JobId WHERE t.JobID=325809 执行计划: 我所尝试的: DECLARE @i INT SET @i=1 SELECT TOP (@i) ObjectType='Job',w.WONumber,* FROM TSP_TSR_Job t left

Sql server 不能将值NULL插入列';sdept&x27;,表格';XSGL.dbo.student';;该列不允许空值。插入失败

我在SQL Server上遇到了一些问题。 我有一个名为XSGL的数据库来管理学生信息 首先,我在表Student上创建了一个名为IS_Student的视图 然后我想在视图中插入一个学生 INSERT INTO IS_Student VALUES('200215129', '赵新', '男', 20) ; 但它有一个错误: Msg 515, Level 16, State 2, Line 1 不能将值 NULL 插入列 'sdept',表 'XSGL.dbo.student';列不允许有

Sql server SQL Server数据包超时

我们有SQL Server 2016(v13.0.4206.0),默认情况下,并行性没有任何限制-SQL想要的任何数量。它没有导致任何问题。。。直到现在 对于另一个特性,有一个书面查询意外地在应用程序中引发超时异常。当它成功地将每个查询的最大线程数设置为1时,我感到非常惊讶。是的,6秒的查询时间不是很好,甚至占去了大部分的时间用于抓取,但距离3分钟的超时时间还很远 顺便说一下,尽管有并行性设置,但使用SQLServerManagementStudio执行此查询始终有效。似乎和数据库的连接有问题,

Sql server 如何访问IIS中HTTP请求的日志或从实体框架发送到SQL Server的查询日志?

我创建了一个简单的网站,它有一个登录页面,只需要通过电子邮件地址进行身份验证 我没有存储任何登录日志,也没有在IIS上启用任何日志功能 现在,人们正在询问过去两天登录的电子邮件列表 我使用EntityFramework连接到数据库。这是身份验证方法: public static bool Authenticate(string email) { using (var db = new DatabaseEntities()) { var us

Sql server 如何根据日期进行滚动周?

我目前在实习后从事数据分析师的学生工作,我必须根据公司的票务工具编写报告,因此,我使用预计算表(管理员根据他的查询制作了预计算表) 我有一张周表,上面有我所需要的一切,我必须做一份26周滚动报告 因为它是被历史化的计算结果,我没有创建日期或结束日期列。 我做不到,你能帮我吗 实际上,作为一个滚动查询,如果2021年我有18周的时间,我将需要2020年最后8周的时间 我有以下专栏:结束、周、月、积压。。。我需要它只是为了关门 我试过这个: SELECT SUM(CLOSED), WEEK, MON