— (комментарий) (Transact-SQL) — SQL Server
Twitter LinkedIn Facebook Адрес электронной почты
- Статья
- Чтение занимает 2 мин
Область применения: SQL Server (все поддерживаемые версии) База данных SQL Azure Управляемый экземпляр SQL Azure Azure Synapse Analytics Analytics Platform System (PDW)
Обозначает текст комментария пользователя. Комментарии могут вставляться отдельной строкой, добавляться к концу командной строки языка Transact-SQL или инструкции Transact-SQL. Сервер не обрабатывает комментарий.
Синтаксические обозначения в Transact-SQL
Синтаксис
-- text_of_comment
Примечание
Ссылки на описание синтаксиса Transact-SQL для SQL Server 2014 и более ранних версий, см. в статье Документация по предыдущим версиям.
Аргументы
text_of_comment
Строка, содержащая текст комментария.
Используйте два дефиса ( — ) для однострочных или вложенных комментариев. Комментарии, вставляемые с использованием символов — , завершаются новой строкой, которая задается символом возврата каретки (U+000A), символом перевода строки (U+000D) или сочетанием этих двух символов. Длина комментариев не ограничена. В следующей таблице перечислены сочетания клавиш, используемые для комментирования и раскомментирования текста.
Действие | Standard |
---|---|
Преобразование выделенного текста в комментарий | CTRL + K, CTRL + C |
Снять комментарий с выделенного текста | CTRL + K, CTRL + U |
Дополнительные сведения о сочетаниях клавиш см. в статье Сочетания клавиш среды SQL Server Management Studio.
Сведения о многострочных комментариях см. в статье Косая черта-звездочка (блок комментариев) (Transact-SQL).
Примеры
В следующем примере используются символы комментария —.
-- Choose the AdventureWorks2012 database. USE AdventureWorks2012; GO -- Choose all columns and all rows from the Address table. SELECT * FROM Person.Address ORDER BY PostalCode ASC; -- We do not have to specify ASC because -- that is the default. GO
См. также:
Язык управления потоком (Transact-SQL)
python — Вложенные комментарии Django дублирование SQL запросов
Есть приложение которое имеет два endpoint первое для создания и вывода постов (api/v1/poll/) и второе(api/v1/comment) для создания и вывода многоуровневых комментариев. При получении комментариев к посту либо просто комментариев каждый SQL запрос дублируется 4 раза, просмотрел это через django-debug-toolbar вот скрин.
Делал приложение на основе вот этой статьи с использованием библиотеки fluentcomments, которая в свою очередь основа на threadedcomments. Своей модели комментариев я не использовал, брал FlutterComment.
Допустим при получении поста с id=2 через get запрос по пути api/v1/poll/2/ в дебаггере видно, что я попадаю в функцию get_comments 4 раза, я не понимаю почему это происходит.
Когда я обращаюсь к api/v1/comment/1/ get запросом для получения комментария с id=1, также 4 раза дублируется один и тот же запрос
models.py
from django.db import models class Poll(models.Model): name = models.CharField(max_length=255) details = models.TextField(blank=True, null=True) def __str__(self): return self.name
serializers.py
from fluent_comments.models import FluentComment from rest_framework import serializers from .models import Poll class RecursiveField(serializers.Serializer): def to_representation(self, value): serializer = self. parent.parent.__class__( value, context=self.context) return serializer.data class CommentSerializerWithoutChildren(serializers.ModelSerializer): #children = RecursiveField(many=True) class Meta: model = FluentComment fields = ( 'tree_path', 'object_pk', 'comment', 'id', ) class CommentSerializerFull(serializers.ModelSerializer): children = RecursiveField(many=True) class Meta: model = FluentComment fields = ( 'tree_path', 'object_pk', 'comment', 'id', 'children' ) class PollSerializer(serializers.ModelSerializer): comments = serializers.SerializerMethodField() class Meta: model = Poll fields = ('id', 'name', 'details', 'comments') @staticmethod def get_comments(obj): poll_comment = FluentComment.objects.filter(object_pk=obj.id, tree_path__regex="^..{32}$") serializer = CommentSerializerWithoutChildren(poll_comment, many=True) data = serializer.data return data
views.py
from .models import Poll from django.contrib.contenttypes.models import ContentType from rest_framework.response import Response from datetime import datetime from Kvartirka import settings class PollViewSet(viewsets.ModelViewSet): queryset = Poll.objects.all() serializer_class = PollSerializer def retrieve(self, request, pk=None): poll = self.get_object() serializer = self.serializer_class(poll, context={'request': request}) return Response(serializer.data) class CommentViewSet(viewsets.ModelViewSet): queryset = FluentComment.objects.all() serializer_class = CommentSerializerFull def create(self, request, *args, **kwargs): if request: data = self.request.data comment = data['comment'] poll = data['Poll'] if 'parent' in data: parent = data['parent'] else: parent = None submit_date = datetime. now() content = ContentType.objects.get(model="Poll").pk comment = FluentComment.objects.create(object_pk=poll, comment=comment, submit_date=submit_date, content_type_id=content, user_id=self.request.user.id, site_id=settings.SITE_ID, parent_id=parent) serializer = CommentSerializerFull(comment, context={'request': request}) return Response(serializer.data)
urls.py
from rest_framework import routers from .views import CommentViewSet, PollViewSet router = routers.DefaultRouter() router.register(r'poll', PollViewSet) router.register(r'comment', CommentViewSet) urlpatterns = router.urls
Комментарии SQL
❮ Предыдущий Далее ❯
Комментарии SQL
Комментарии используются для объяснения разделов операторов SQL или для предотвращения выполнения операторов SQL.
Примечание. Примеры в этой главе не будут работать в Firefox и Майкрософт Эдж!
Комментарии не поддерживаются в базах данных Microsoft Access. В наших примерах Firefox и Microsoft Edge используют базу данных Microsoft Access.
Однострочные комментарии
Однострочные комментарии начинаются с --
.
Любой текст между — и концом строки будет проигнорирован (не будет выполнен).
В следующем примере в качестве объяснения используется однострочный комментарий:
Пример
—Выбрать все:
SELECT * FROM Customers;
Попробуйте сами »
В следующем примере однострочный комментарий игнорирует конец строки:
Пример
SELECT * FROM Customers — WHERE City=’Berlin’;
Попробуйте сами »
В следующем примере используется однострочный комментарий для игнорирования инструкции:
Пример
—SELECT * FROM Customers;
ВЫБЕРИТЕ * ИЗ продуктов;
Попробуйте сами »
Многострочные комментарии
Многострочные комментарии начинаются с /*
и заканчиваются на */
.
Любой текст между /* и */ будет игнорироваться.
В следующем примере в качестве пояснения используется многострочный комментарий:
Пример
/*Выбрать все столбцы
всех записей
в таблице Customers:*/
SELECT * FROM Customers;
Попробуйте сами »
В следующем примере используется многострочный комментарий для игнорирования многих операторов:
Пример
/*SELECT * FROM Customers;
ВЫБЕРИТЕ * ИЗ продуктов;
ВЫБЕРИТЕ * ИЗ заказов;
SELECT * FROM Categories;*/
SELECT * FROM Suppliers;
Попробуйте сами »
Чтобы игнорировать только часть оператора, также используйте комментарий /* */.
В следующем примере комментарий используется для игнорирования части строки:
Пример
SELECT CustomerName, /*City,*/ Country FROM Customers;
Попробуйте сами »
В следующем примере комментарий используется для игнорирования части оператора:
Пример
SELECT * FROM Customers WHERE (CustomerName LIKE ‘L%’
OR CustomerName LIKE ‘R%’ /*OR CustomerName LIKE ‘ S%’
ИЛИ CustomerName LIKE ‘T%’*/ ИЛИ CustomerName LIKE ‘W%’)
AND Country=’USA’
ЗАКАЗАТЬ ПО CustomerName;
Попробуйте сами »
❮ Предыдущая Следующий ❯
ВЫБОР ЦВЕТА
Лучшие учебники
Учебник по HTMLУчебник по CSS
Учебник по JavaScript
Учебник How To
Учебник по SQL
Учебник по Python
Учебник по W3. CSS
Учебник по Bootstrap
Учебник по PHP
Учебник по Java
Учебник по C++
Учебник по jQuery
900 Справочник
Справочник по HTML
Справочник по CSS
Справочник по JavaScript
Справочник по SQL
Справочник по Python
Справочник по W3.CSS
Справочник по Bootstrap
Справочник по PHP
Цвета HTML
Справочник по Java
Справочник по Angular
Справочник по jQuery
1 Top1 Examples
Примеры HTML
Примеры CSS
Примеры JavaScript
Примеры инструкций
Примеры SQL
Примеры Python
Примеры W3.CSS
Примеры Bootstrap
Примеры PHP
Примеры Java
Примеры XML
Примеры jQuery
ФОРУМ | О
W3Schools оптимизирован для обучения и обучения. Примеры могут быть упрощены для улучшения чтения и обучения. Учебники, ссылки и примеры постоянно пересматриваются, чтобы избежать ошибок, но мы не можем гарантировать полную правильность всего содержания. Используя W3Schools, вы соглашаетесь прочитать и принять наши условия использования, куки-файлы и политика конфиденциальности. Copyright 1999-2022 Refsnes Data. Все права защищены.
W3Schools работает на основе W3.CSS.
SQL Server: комментарии в SQL
В этом учебном пособии по SQL Server объясняется, как использовать комментарии в операторах SQL в SQL Server (Transact-SQL) с синтаксисом и примерами.
Описание
Знаете ли вы, что вы можете размещать комментарии в своих операторах SQL в SQL Server (Transact-SQL)? Эти комментарии могут располагаться в одной строке или занимать несколько строк. Давайте посмотрим, как это сделать.
Синтаксис
Существует два синтаксиса, которые можно использовать для создания комментария в операторе SQL в SQL Server (Transact-SQL).
Синтаксис с использованием символа
--
Синтаксис для создания комментария SQL с использованием символа --
в SQL Server (Transact-SQL):
-- комментарий идет сюда
В SQL Server комментарий, начинающийся с — символ должен стоять в конце строки в операторе SQL с разрывом строки после него. Этот метод комментирования может охватывать только одну строку в вашем SQL и должен быть в конце строки.
Синтаксис с использованием
/*
и */
символов Синтаксис для создания комментария SQL с использованием /*
и */
символов в SQL Server (Transact-SQL):
/* комментарий идет здесь */
В SQL Server комментарий, начинающийся с символа /*
и заканчивающийся на */
, может находиться в любом месте оператора SQL. Этот метод комментирования может занимать несколько строк в вашем SQL.
Пример — Комментарий к одной строке
Вы можете создать комментарий SQL в одной строке оператора SQL в SQL Server (Transact-SQL).
Давайте посмотрим на пример комментария SQL, который показывает комментарий SQL в отдельной строке:
SELECT employee_id, last_name /* Автор: TechOnTheNet.com */ ОТ сотрудников;
Вот комментарий SQL, который появляется в середине строки:
SELECT /* Author: TechOnTheNet.com */ employee_id, last_name ОТ сотрудников;
Вот комментарий SQL, который появляется в конце строки:
SELECT employee_id, last_name /* Автор: TechOnTheNet.com */ ОТ сотрудников;
или
ВЫБЕРИТЕ employee_id, last_name -- Автор: TechOnTheNet.com ОТ сотрудников;
Пример — комментарий к нескольким строкам
В SQL Server (Transact-SQL) вы можете создать комментарий SQL, который занимает несколько строк в инструкции SQL. Например:
ВЫБЕРИТЕ идентификатор_сотрудника, фамилия /* * Автор: TechOnTheNet.com * Цель: показать комментарий, занимающий несколько строк в вашем операторе SQL. */ ОТ сотрудников;
Этот комментарий SQL занимает несколько строк в SQL Server — в этом примере он занимает 4 строки.
В SQL Server вы также можете создать комментарий SQL, который занимает несколько строк, используя следующий синтаксис:
SELECT employee_id, last_name /* Автор: TechOnTheNet.com Цель: показать комментарий, занимающий несколько строк в вашем операторе SQL.