Comparaison de syntaxe entre l'accès et le serveur SQL
Cet article résume brièvement les différences de syntaxe entre l'accès et le serveur SQL. J'espère qu'il sera utile à tout le monde.
1. Fonctions et solutions différenciées
Les fonctions de la solution ci-dessous sont définies dans la méthode de la classe TAdoConn dans l'unité untDataBase.
2. Fonctions de base de données et listes de mots clés partiellement identiques entre Access et SQLSERVER
1. 🎜>2. Mots clés
3. La différence de syntaxe d'instruction entre Access et SqlServer
1. 🎜>L'instruction suivante dans ACCESS
Insert INTO
PubSubJectAccCopys(Copy_id,Acc_id,Acc_Pid,Acc_name,acc_short,Acc_Comment,Acc_Pro,acc_type,Sub_id_flag,acc_index) (Sélectionnez 20 0201 , Acc_id,Acc_Pid,Acc_name,acc_short,Acc_Comment,Acc_Pro,acc_type,Sub_id_flag,acc_index FROM PubSubJectAcc Where PubSubJectAcc.co_type='03')
中后"(sélectionnez 200201******.co_Type= ' 03')" doit être supprimé pour être exécuté, comme suit :
Insérer INTO
PubSubJectAccCopys(Copy_id,Acc_id,Acc_Pid,Acc_name,acc_short, Acc_Comment,Acc_Pro,acc_type,Sub_id_flag,acc_index) Sélectionnez 200201,Acc_id,Acc_Pid,Acc_name,acc_short,Acc_Comment,Acc_Pro,acc_type,Sub_id_flag,acc_index FROM PubSubJectAcc Où PubSubJectAcc.co_type='03'
Dans SQL SERVER Tout est possible
2. Instruction de jointure interne 1
StrSql:='select a.user_id,a.user_opcode,b.copy_name de sysuser une jointure interne (syscopysuser c inner join syscopys b sur c .copy_id=c.copy_id) sur a. user_id=c.user_id où
a.user_opcode=''' +EdtUserOpCode.text+''' Et copy_name='''+Tmpcopyname +''''
doit être remplacé par
StrSql:='select a.user_id,a.user_opcode,b.copy_name de sysuser une jointure interne (syscopysuser c inner join syscopys b sur c.copy_id=d. copy_id) sur a.user_id=c. user_idwhere
a.user_opcode=''' +EdtUserOpCode.text+''' Et copy_name='''+Tmpcopyname +'''';
La condition de recherche de cette ligne de code est faux : C.copy_id=C.Copy_id doit être remplacé par c.copy_id=d.copy_id
Remarque : les deux méthodes d'écriture peuvent être exécutées dans SQL-SERVER, mais c.copy_id=C.copy_id ne peut pas l'être. exécuter dans ACCESS
3. Instruction de jointure interne 2
StrSql:='select copy_year,copy_name,a.copy_id de SysCopys une jointure interne SysCopysUser b sur a. =b.copy_id où b.user_id=' + '''' +TmpPubUserID+ '''';
Cela devrait être
StrSql:='select copy_year, copy_name,a.copy_id from SysCopys une jointure interne SysCopysUser b sur a.copy_id=b.copy_id où a.curcopy_flag=''1'' et b.user_id=' + '''' +TmpPubUserID+ '''';
Remarque : Les deux méthodes d'écriture peuvent être exécutées dans SQL-SERVER, mais la première ne peut pas être exécutée dans ACCESS
4 Instruction Inner Join 3
Peut être exécutée dans le serveur SQL Les instructions suivantes
. 'Sélectionnez la distribution sysoption.opti_id, sysoption.Opti_name, Sysoption.Opti_Code, SysroleOption.Opti_SORT FROM SYSOPTION Inner Join Option sur Sysoption.Opti_id = Sysroleoption.Opti_id et SysroleOption.role_id =: Roleid 'Mais pas dans ACCESS, uniquement 'Sélectionnez sysoption.opti_id,sysoption.opti_name,sysoption.opti_code,sysroleoption.opti_sort distincts De sysoption, jointure interne à sysroleoption ON sysoption.opti_id=sysroleoption.opti_id Où sysroleoption. 🎜>
5. L'instruction de mise à jour
peut être exécutée dans Sql SerVer mais ne peut pas être exécutée dans Access
'Update sysuserrole SET sysuserrole.role_sort = (Sélectionnez sysrole.role_sort FROM sysrole Où sysuserrole .role_id = sysrole.role_id et sysuserrole.user_id='01')'
6. Comparaison de dates
Utilisé dans SQL SERVER
StrSql:='select copy_year,Start_month ,Cur_month,Start_Flag,Start_date,End_date '
+'From SysCopys '
+'where copy_id='''+LoginCopyID+''' '
+ 'et start_date< ;='''+datetostr(LoginDate)+''' '
+'and end_date>='''+datetostr(LoginDate)+''';
Utiliser
StrSql:='select copy_year,Start_month,Cur_month,Start_Flag,Start_date,End_date '
+'From SysCopys '
+'where copy_id='' dans ACCESS '+LoginCopyID+' '' '
+'et start_date
+'et end_date>=#'+datetostr(LoginDate)+ '#'
Référez-vous à la 10ème fonction "GetDateStr" ci-dessus
7. Déclaration d'acquisition de la valeur maximale
StrSql:='insert into sysRoleOption '
+'select '' ' +fidRoleId+''' comme Role_ID,opti_id,'
+'convert(numeric,opti_id)-(convert(numeric,opti_parentid)*100)+'+ MaxOptiSort
+' comme opti_Sort de sysoption où opti_parentid='''
+PCoTypeID(self.trvRoles.Selected.data)^.StrCoTypeID
+''' et opti_bottom=''1'+''' ' ;
changé en
StrSql:='insert into sysRoleOption '
+'select '''+fidRoleId+''' as Role_ID,opti_id,'
+'opti_id-opti_parentid*100+'+ MaxOptiSort
+' comme opti_sort de sysoption où opti_parentid='''
+PCoTypeID(self.trvRoles.Selected.data)^ . StrCoTypeID
+''' et opti_bottom=''1'+''''
Remarque : les deux méthodes d'écriture peuvent s'exécuter dans SQL-SERVER, mais la première fonctionne dans ACCESS. Elle ne peut pas être exécuté dans
Cependant, compte tenu de l'occurrence de valeurs Null et de la polyvalence de l'instruction, vous pouvez utiliser la 07ème fonction "GetNullStr" et la 09ème fonction "GetConvertStr" ci-dessus pour terminer la conversion des chaînes. en nombres, valeurs nulles et Conversion de nombres 0 : reportez-vous au code GetNextNumStr.
1. Comme ne peut pas être omis dans SQL
2 Un seul SQL peut être exécuté à la fois
3 Il n'y a pas de sous-chaîne, de conversion et d'autres fonctions
4. types entiers et caractères en SQL
5. Aucune procédure stockée ni déclencheur
6.! = Remplacer par
7. Ajoutez des signes # des deux côtés de la chaîne de temps
8. Dans l'instruction SQL avec les paramètres, remplacez @ par le signe ?
Recommandations associées : tutoriel d'accès à la base de données
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

1. Ouvrez les paramètres dans Windows 11. Vous pouvez utiliser le raccourci Win+I ou toute autre méthode. 2. Accédez à la section Applications et cliquez sur Applications et fonctionnalités. 3. Recherchez l'application que vous souhaitez empêcher de s'exécuter en arrière-plan. Cliquez sur le bouton à trois points et sélectionnez Options avancées. 4. Recherchez la section [Autorisations d'application en arrière-plan] et sélectionnez la valeur souhaitée. Par défaut, Windows 11 définit le mode d'optimisation de l'alimentation. Il permet à Windows de gérer le fonctionnement des applications en arrière-plan. Par exemple, une fois que vous avez activé le mode d'économie de batterie pour préserver la batterie, le système fermera automatiquement toutes les applications. 5. Sélectionnez [Jamais] pour empêcher l'application de s'exécuter en arrière-plan. Veuillez noter que si vous remarquez que le programme ne vous envoie pas de notifications, ne parvient pas à mettre à jour les données, etc., vous pouvez

Deepseek ne peut pas convertir les fichiers directement en PDF. Selon le type de fichier, vous pouvez utiliser différentes méthodes: documents communs (Word, Excel, PowerPoint): utilisez Microsoft Office, LibreOffice et d'autres logiciels à exporter sous forme de PDF. Image: Enregistrer sous le nom de PDF à l'aide d'une visionneuse d'image ou d'un logiciel de traitement d'image. Pages Web: Utilisez la fonction "Imprimer en PDF" du navigateur ou l'outil Web dédié à PDF. Formats peu communs: trouvez le bon convertisseur et convertissez-le en PDF. Il est crucial de choisir les bons outils et d'élaborer un plan basé sur la situation réelle.

Oracle peut lire les fichiers dbf en suivant les étapes suivantes : créer une table externe et référencer le fichier dbf ; interroger la table externe pour récupérer les données dans la table Oracle ;

Hier, BotanixLabs a annoncé avoir finalisé un financement total de 11,5 millions de dollars américains, avec la participation de Polychain Capital, Placeholder Capital et d'autres. Le financement sera utilisé pour construire l’équivalent EVM décentralisé de BTCL2Botanix. Spiderchain combine la facilité d'utilisation d'EVM avec la sécurité de Bitcoin. Depuis la mise en ligne du testnet en novembre 2023, il y a eu plus de 200 000 adresses actives. Odaily analysera le mécanisme caractéristique de Botanix et le processus d'interaction testnet dans cet article. Botanix Selon la définition officielle, Botanix est un L2EVM décentralisé et complet de Turing construit sur Bitcoin et se compose de deux composants principaux : Ethereum Virtual Machine

Une erreur de violation d'accès est une erreur d'exécution qui se produit lorsqu'un programme accède à un emplacement mémoire au-delà de son allocation de mémoire, provoquant un crash ou une fin anormale du programme. Les solutions incluent : la vérification des limites du tableau ; l'utilisation correcte des pointeurs ; l'utilisation des fonctions d'allocation de mémoire appropriées ; la vérification des débordements de mémoire ; la vérification des bibliothèques tierces pour suivre l'exécution ; .

1. Recherchez la page Panneau de configuration dans le menu Démarrer. 2. Modifiez ensuite l'affichage en Catégorie dans le panneau de configuration et cliquez sur Système et sécurité. 3. Recherchez et cliquez sur le bouton Allowremoteaccess sous Système. 4. Dans la fenêtre contextuelle, cliquez sur la colonne Propriétés du système distant, cochez la case Autoriser la connexion à distance à cet ordinateur et cliquez sur OK pour enregistrer.

Résolvez le problème de l'interface tiers renvoyant 403 dans l'environnement Node.js. Lorsque nous utilisons Node.js pour appeler des interfaces tierces, nous rencontrons parfois une erreur de 403 à partir de l'interface renvoyant 403 ...

L'impact du partage des connexions redis dans Laravel Framework et sélectionnez Méthodes Lors de l'utilisation de Laravel Framework et Redis, les développeurs peuvent rencontrer un problème: grâce à la configuration ...
