Maison base de données tutoriel mysql SQL Server数据库开发中的十大问题(4)_MySQL

SQL Server数据库开发中的十大问题(4)_MySQL

Jun 01, 2016 pm 01:51 PM
数据库开发

bitsCN.com

    的ISO标准出现的,在1999年的标准上稍加修改。此外,微软还进行了各种私有的加强。

 

标准SQL和T-SQL之间有很多区别――太多了,这里就不说了。还有,如果你在 SQL Server上工作,那么使用这些私有的扩展是有好处的。由于许多SQL Server的特性的本质,你不使用非标准的命令的话,将会有很多强大的功能无法实现。如果你想要看看你的SQL是否符合标准,你可以使用SET FIPS_FLAGGER命令。

 

SQL Server 2005中的索引类别

 

SQL Server 2005中是否有新的索引类别了?

 

专家回答:

 

SQL Server 2005没有为关系表引入新的索引类型。基本上――聚簇和非聚簇索引是以B-trees的方式实现的――还仍然在应用。然而,SQL Server 2005确实包含了一些索引上的加强,不论是完全文本索引,还是对于XML数据,此外这些加强还可以改善一些与关系型索引有关的问题。

 

SQL Server 2005的完全文本索引特性是全新的,并且是重新编写的。要获得这个特性的信息,请阅读Nimish Khanolkar的MSDN广播文档,介绍SQL Server 2005中的全文本查找。

 

XML是SQL Server 2005中另外一个在方式上发生了巨大转变的内容。现在对于开发人员来说有第一流的XML数据类型可用了。这个类型支持XQuery查询语言,使用了这个类型的字段可以通过特殊格式的XML索引被索引到。要了解更多有关XML类型的信息,请查找MSDN 上的文章。

 

还有各种各样的有关T-SQL索引命令的加强。也许最令人感兴趣的就是新的“在线” 索引类型,它允许数据库管理员在不需要把用户锁到表外面的情况下执行索引维护任务。这个很有可能标记着数据库管理员需要等到夜里3点才能打开维护窗口修正问题的状况的终结!要了解更多有关这个特性的信息,请查找SQL Server Worldwide Users Group 上的文章。
  
 

为行选择创建一个脚本

 

想象一下这个表:

        prod_key item_key pack_key last_sale
LM001 1029 AD100 2004/12/05
LM870 1029 AD100 2005/09/20
PE789 1030 BC400 2003/07/12
PE312 1030 BC400 2004/08/07

 

 

我想要选出哪些在item_key 和pack_key相等的情况下,日期比较大的那一行。换句话说,我想要:

        LM870 1029 AD100 2005/09/20
PE312 1030 BC400 2004/08/07

 

 

专家回答:

 

这个表有主键吗?那样的话查询可能会容易些。不管怎么样,我觉得你应该按照下面这样:

        SELECT prod_key,item_key,pack_key,last_sale
FROM (SELECT item_key,pack_key,MAX(last_sale)
 AS last_sale FROM tablex GROUP BY item_key,pack_key) AS MaxDateTable
WHERE tablex.item_key = MaxDateTable.item_key
AND tablex.pack_key = MaxDateTable.pack_key
AND tablex.last_sale = MaxDateTable.last_sale

 

 

列出没有记录的数据库表

 

我创建了一个动态的SQL Server查询来输出表中行的数量。我的目标是列出在数据库中没有记录的表。查询如下所示:

        declare @strsql varchar(100)
declare @tablename varchar(50)
@tablename=’table123′@strsql=’
select count(*) from ‘ + @tablename exec(@strsql)

 

 

我得到了输出,但是我无法把这个值存储到变量中以备查看。

 

我想要这样查看:

        /* @countvariable=0
print(@tablename)*/

 

还有其它的解决方法吗?

 

专家回答:

 

你可以让你的解决方案更加灵活一些,通过从sysobjects表中抓取表名:

        declare @strsql varchar(256)
create table #emptytables
(tablename varchar(128), table_rowcount int)select
 @strsql=’select distinct o.name as TableName,
.rowcnt as Table_RowCount
from sysobjects o
inner join sysindexes x
on o.id = x.id
where x.rowcnt = 0 and
o.type = ‘’U”’insert #emptytables (TableName,
Table_rowcount) exec (@strsql)
select * from #emptytables
drop table #emptytables

 

bitsCN.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Où trouver la courte de la grue à atomide atomique
1 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment modifier une table dans MySQL en utilisant l'instruction ALTER TABLE? Comment modifier une table dans MySQL en utilisant l'instruction ALTER TABLE? Mar 19, 2025 pm 03:51 PM

L'article discute de l'utilisation de l'instruction ALTER TABLE de MySQL pour modifier les tables, notamment en ajoutant / abandon les colonnes, en renommant des tables / colonnes et en modifiant les types de données de colonne.

Comment configurer le cryptage SSL / TLS pour les connexions MySQL? Comment configurer le cryptage SSL / TLS pour les connexions MySQL? Mar 18, 2025 pm 12:01 PM

L'article discute de la configuration du cryptage SSL / TLS pour MySQL, y compris la génération et la vérification de certificat. Le problème principal est d'utiliser les implications de sécurité des certificats auto-signés. [Compte de caractère: 159]

Comment gérez-vous les grands ensembles de données dans MySQL? Comment gérez-vous les grands ensembles de données dans MySQL? Mar 21, 2025 pm 12:15 PM

L'article traite des stratégies pour gérer de grands ensembles de données dans MySQL, y compris le partitionnement, la rupture, l'indexation et l'optimisation des requêtes.

Quels sont les outils de GUI MySQL populaires (par exemple, MySQL Workbench, PhpMyAdmin)? Quels sont les outils de GUI MySQL populaires (par exemple, MySQL Workbench, PhpMyAdmin)? Mar 21, 2025 pm 06:28 PM

L'article traite des outils de GUI MySQL populaires comme MySQL Workbench et PhpMyAdmin, en comparant leurs fonctionnalités et leur pertinence pour les débutants et les utilisateurs avancés. [159 caractères]

Comment déposez-vous une table dans MySQL à l'aide de l'instruction TABLE DROP? Comment déposez-vous une table dans MySQL à l'aide de l'instruction TABLE DROP? Mar 19, 2025 pm 03:52 PM

L'article discute de la suppression des tables dans MySQL en utilisant l'instruction TABLE DROP, mettant l'accent sur les précautions et les risques. Il souligne que l'action est irréversible sans sauvegardes, détaillant les méthodes de récupération et les risques potentiels de l'environnement de production.

Comment créez-vous des index sur les colonnes JSON? Comment créez-vous des index sur les colonnes JSON? Mar 21, 2025 pm 12:13 PM

L'article discute de la création d'index sur les colonnes JSON dans diverses bases de données comme PostgreSQL, MySQL et MongoDB pour améliorer les performances de la requête. Il explique la syntaxe et les avantages de l'indexation des chemins JSON spécifiques et répertorie les systèmes de base de données pris en charge.

Comment représentez-vous des relations en utilisant des clés étrangères? Comment représentez-vous des relations en utilisant des clés étrangères? Mar 19, 2025 pm 03:48 PM

L'article discute de l'utilisation de clés étrangères pour représenter les relations dans les bases de données, en se concentrant sur les meilleures pratiques, l'intégrité des données et les pièges communs à éviter.

Comment sécuriser MySQL contre les vulnérabilités communes (injection SQL, attaques par force brute)? Comment sécuriser MySQL contre les vulnérabilités communes (injection SQL, attaques par force brute)? Mar 18, 2025 pm 12:00 PM

L'article discute de la sécurisation MySQL contre l'injection SQL et les attaques brutales à l'aide de déclarations préparées, de validation des entrées et de politiques de mot de passe solides (159 caractères)

See all articles