62945

Реляционная модель данных. Реляционная база данных

Лекция

Педагогика и дидактика

Строки таблицы (домены) содержат сведения о представленных в ней фактах (или документах, или людях, одним словом, — об однотипных объектах). На пересечении столбца (атрибут) и строки находятся конкретные значения содержащихся в таблице данных.

Русский

2016-09-14

52.44 KB

1 чел.

5fan_ru_62945_c2f512b5657b5a61878980df862c9ef8.html

Занятие 1

Реляционная модель данных

Реляционная модель данных была предложена Е.Ф.Коддом (Dr. E.F.Codd), известным исследователем в области баз данных, в 1969 году, когда он был сотрудником фирмы IBM. Впервые основные концепции этой модели были опубликованы в 1970 г. «A Relational Model of Data for Large Shared Data Banks», CACM, 1970, 13 N 6).

Реляционную базу данных можно представить себе как набор взаимосвязанных таблиц, содержащих данные. 

Набор средств для управления подобным хранилищем называется реляционной системой управления базами данных (СУБД). СУБД может содержать утилиты, приложения, сервисы, библиотеки, средства создания приложений и другие компоненты.

Любая таблица реляционной базы данных состоит из строк и столбцов.  

Строки таблицы (домены) содержат сведения о представленных в ней фактах (или документах, или людях, одним словом, — об однотипных объектах). На пересечении столбца (атрибут) и строки находятся конкретные значения содержащихся в таблице данных.

Данные в таблицах удовлетворяют следующим принципам:

  1. Каждое значение, содержащееся на пересечении строки и колонки, должно быть атомарным (то есть не расчленяемым на несколько значений).
  2. Значения данных в одной и той же колонке должны принадлежать к одному и тому же типу, доступному для использования в данной СУБД.
  3. Каждая запись в таблице уникальна, то есть в таблице не существует двух записей с полностью совпадающим набором значений ее полей.
  4. Каждое поле имеет уникальное имя.
  5. Последовательность полей в таблице несущественна.
  6. Последовательность записей также несущественна.

Несмотря на то, что строки таблиц считаются неупорядоченными, любая система управления базами данных позволяет сортировать строки и колонки в выборках из нее нужным пользователю способом.

Поскольку последовательность столбцов в таблице несущественна, обращение к ним производится по имени, и эти имена для данной таблицы уникальны (но не обязаны быть уникальными для всей базы данных).

Реляционная модель основана на теории множеств и математической логике. Такой фундамент обеспечивает математическую строгость реляционной модели данных.

В свою очередь, на основе реляционной модели были разработаны различные языки для доступа к реляционным данным, такие как SEQUEL, SQL, QUEL и другие. Фактическим промышленным стандартом в настоящее время стал язык SQL (Structured Query Language - язык структурированных запросов).

Различные фирмы, производители СУБД, предлагают свои реализации языка SQL. Эти реализации отличаются как друг от друга, так и от стандартизованного языка SQL. Это и хорошо и плохо. Хорошо это тем, что конкретная реализация языка, может включать в себя более широкие возможности по сравнению со стандартизованными SQL, например, больше типов данных, большее количество команд, больше дополнительных опций имеющихся команд. Такие возможности делают работу с конкретной СУБД более эффективной. Кроме того, такие нестандартные возможности языка проходят практическую апробацию и со временем могут быть включены в стандарт. Плохо же это тем, что различия в синтаксисе реализаций SQL затрудняют перенос приложений из одной системы в другую. Например, если приложение было написано для базы данных MS SQL Server с использованием своего диалекта SQL - языка Transact-SQL, то при переносе системы в базу данных ORACLE, не все конструкции языка будут понятны соответствующему диалекту SQL - языку PL/SQL.

Взаимосвязь реляционной модели данных, стандарта языка SQL и различных его реализаций можно условно изобразить в виде следующей пирамиды:

Пример базы данных


Попробуем построить простейшую базу данных, например, меню кафе. В таблице FOOD.DBF представлены уникальные номера блюд (столбец NOM), их названия (столбец NAME), коды видов (столбец VID), основной продукт (столбец PRODUCT), масса порции в граммах (столбец MASS) и приведенная стоимость в рублях приготовления одной порции (столбец STOIM).

FOOD.DBF

NOM

NAME

VID

PRODUCT

MASS

STOIM

1

vagetable salad

sn

vagetable

200,00

30

2

meat salad

sn

meat

200,00

40

3

fish salad

sn

fish

200,00

40

4

fish soup

so

fish

500,00

50

5

meat soup

so

meat

500,00

50

6

meat

ho

meat

210,00

60

7

fish

ho

fish

160,00

50

8

apple

de

apple

160,00

30

9

jogourt

de

jogourt

160,00

40

10

coffee

dr

coffee

200,00

10

11

milk

dr

milk

200,00

20

12

juice

dr

juice

200,00

20

Разумеется, помимо этих характеристик, предлагаемые блюда обладают и другими, но в данной задаче ограничимся этим набором. В дальнейшем будем называть эти характеристики атрибутами.

Если мы решили представить нашу базу в табличном виде, очевидно, что каждый атрибут соответствует столбцу таблицы, а полная информация об одной книге - строке таблицы.

Типы атрибутов и домены

Очевидно, что, несмотря на разнообразие допустимых значений атрибута, не все из них являются допустимыми. Например, масса и стоимость блюда должны быть действительными числами, остальные атрибуты могут быть представлены строковыми значениями. Таким образом, каждый атрибут имеет свой тип, который ограничивает  множество принимаемых атрибутом значений.

Набор типов, поддерживаемых реляционными СУБД, включает в себя простые (атомарные) типы данных, знакомые нам по большинству языков программирования. В них входят: логический (булевский) тип, числовые типы - целочисленный и с плавающей точкой, дата/время, строковый тип и т.д.

Помимо ограничений типа, на значения атрибутов могут накладываться дополнительные ограничения. Скажем, в приведенном примере, масса каждого блюда не должна превышать 500 г.

Подмножество значений данного типа, допустимых для данного атрибута, называется доменом.

Определим в приведенном примере домен для атрибута <NOM>: очевидно, что это должно быть положительное целое число, и при нумерации по порядку маловероятно, что для кафе оно превысит 100.

В других случаях формально определить домен довольно проблематично. Например, атрибут <NAME> блюда должен быть осмысленным набором символов, произвольный набор тут недопустим.

Таким образом, если тип - это физическая характеристика множества значений атрибута, допускающая четкое формальное определение, то домен - скорее логическое понятие, иногда допускающее интуитивное описание.

Отношение определяется заголовком, который представляет собой множество атрибутов. Например, для нашего простейшего примера схема выглядит следующим образом: FOOD (NOM, NAME, VID, PRODUCT, MASS, STOIM).

Тело отношения R является множеством упорядоченных наборов вида (a1, a2, : an), где каждое ai принадлежит множеству Ai. Подобные наборы принято называть кортежами.

Следует заметить, что, хотя кортежи весьма напоминают строки таблицы, а тело отношения - саму таблицу, полной аналогии здесь нет. По своей природе кортежи не являются упорядоченными. Реляционные базы данных, хотя и позволяют упорядочивать результаты запросов некоторым образом, тем не менее, не гарантируют, что сами хранимые данные как-то упорядочены. Другими словами, если мы записываем данные в реляционную базу в какой-то последовательности, не стоит рассчитывать на то, что получить их обратно мы сможем в том же порядке.

ОДНОТАБЛИЧНЫЕ ЗАПРОСЫ

О предложении SELECT

Все запросы на получение практически любого количества данных из одной или нескольких таблиц выполняются с помощью единственного предложения SELECT. В общем случае результатом реализации предложения SELECT является другая таблица. К этой новой (рабочей) таблице может быть снова применена операция SELECT и т.д., т.е. такие операции могут быть вложены друг в друга. Представляет исторический интерес тот факт, что именно возможность включения одного предложения SELECT внутрь другого послужила мотивировкой использования прилагательного "структуризированный" в названии языка SQL.

SELECT

(выбрать) данные из указанных столбцов и (если необходимо) выполнить перед выводом их преобразование в соответствии с указанными выражениями и (или) функциями

FROM

(из) перечисленных таблиц, в которых расположены эти столбцы

WHERE

(где) строки из указанных таблиц должны удовлетворять указанному перечню условий отбора строк

GROUP BY

(группируя по) указанному перечню столбцов с тем, чтобы получить для каждой группы единственное агрегированное значение, используя во фразе SELECT SQL-функции SUM (сумма), COUNT (количество), MIN (минимальное значение), MAX (максимальное значение) или AVG (среднее значение)

HAVING

(имея) в результате лишь те группы, которые удовлетворяют указанному перечню условий отбора групп

Выборка без использования фразы WHERE

ПРИМЕР 1:

select * from food

Результат запроса повторение таблицы FOOD.DBF

Примечание:

Обозначение звездочка (*) служит кратким обозначением всех имен полей в таблице, указанной во фразе FROM. При этом порядок вывода полей соответствует порядку, в котором эти поля определялись при создании таблицы.

ПРИМЕР 2:

select name, stoim from food

Результат запроса – список названий блюд и их стоимость из таблицы FOOD.DBF

Примечание:

Запятая (,) используется для разделения элементов списков

NAME

STOIM

vagetable salad

30

meat salad

40

fish salad

40

fish soup

50

meat soup

50

meat

60

fish

50

apple

30

jogourt

40

coffee

10

milk

20

juice

20

ПРИМЕР 3:

select product from food

Результат запроса – список основных продуктов каждого блюда из таблицы FOOD.DBF

PRODUCT

vagetable

meat

fish

fish

meat

meat

fish

apple

jogourt

coffee

milk

juice

Исключение дубликатов

В предыдущем примере был выдан правильный, но не совсем удачный перечень основных продуктов: из него не были исключены дубликаты. Для исключения дубликатов и одновременного упорядочения перечня необходимо дополнить запрос ключевым словом DISTINCT (различный, различные), как показано в следующем примере:

ПРИМЕР 4:

select distinct product from food

PRODUCT

apple

coffee

fish

jogourt

juice

meat

milk

vagetable

Выборка вычисляемых значений

Из синтаксиса фразы SELECT видно, что в ней может содержаться не только перечень столбцов таблицы или символ *, но и выражения.

ПРИМЕР 5:

select *, Stoim*3 As Summ from food

В результате выполнения этого запроса вычисляется стоимость трех порций каждого блюда, эти данные сохраняются в новое поле таблицы FOOD.DBF; которому присваивается имя SUMM:

NOM

NAME

VID

PRODUCT

MASS

STOIM

SUMM

1

vagetable salad

sn

vagetable

200,00

30

90

2

meat salad

sn

meat

200,00

40

120

3

fish salad

sn

fish

200,00

40

120

4

fish soup

so

fish

500,00

50

150

5

meat soup

so

meat

500,00

50

150

6

meat

ho

meat

210,00

60

180

7

fish

ho

fish

160,00

50

150

8

apple

de

apple

160,00

30

90

9

jogourt

de

jogourt

160,00

40

120

10

coffee

dr

coffee

200,00

10

30

11

milk

dr

milk

200,00

20

60

12

juice

dr

juice

200,00

20

60

ПРИМЕР 6:

select *, Mass+100 As Mass_1 from food

В результате выполнения этого запроса вычисляется масса каждой порции, увеличенная на 100 г, эти данные сохраняются в новое поле таблицы FOOD.DBF; которому присваивается имя MASS_1:

NOM

NAME

VID

PRODUCT

MASS

STOIM

MASS_1

1

vagetable salad

sn

vagetable

200,00

30

300,00

2

meat salad

sn

meat

200,00

40

300,00

3

fish salad

sn

fish

200,00

40

300,00

4

fish soup

so

fish

500,00

50

600,00

5

meat soup

so

meat

500,00

50

600,00

6

meat

ho

meat

210,00

60

310,00

7

fish

ho

fish

160,00

50

260,00

8

apple

de

apple

160,00

30

260,00

9

jogourt

de

jogourt

160,00

40

260,00

10

coffee

dr

coffee

200,00

10

300,00

11

milk

dr

milk

200,00

20

300,00

12

juice

dr

juice

200,00

20

300,00

Фраза WHERE

Фраза WHERE включает набор условий для отбора строк.

Для отбора используются операторы сравнения (= , <>,| <,| <= , >, >=)

ПРИМЕР 7:

select name from food;

where name='f'

Результат запроса – список названий блюд, начинающихся на букву f из таблицы FOOD.DBF.

Примечание:

Точка с запятой (;) употребляется при переходе на следующую строку;

Символьные переменные заключаются в кавычки (' ').

NAME

fish salad

fish soup

fish

ПРИМЕР 8:

select name from food;

where name>'f'

Результат запроса – список названий блюд, начинающихся на любую букву латинского алфавита после буквы f из таблицы FOOD.DBF.

NAME

vagetable salad

meat salad

meat soup

meat

jogourt

milk

juice

Критерий отбора строк формируется из одного или нескольких условий, соединенных логическими операторами:

AND

- когда должны удовлетворяться оба разделяемых с помощью AND условия;

OR

- когда должно удовлетворяться одно из разделяемых с помощью OR условий;

AND NOT 

- когда должно удовлетворяться первое условие и не должно второе;

OR NOT

- когда или должно удовлетворяться первое условие или не должно удовлетворяться второе,

причем существует приоритет AND над OR (сначала выполняются все операции AND и только после этого операции OR). Для получения желаемого результата WHERE условия должны быть введены в правильном порядке, который можно организовать введением скобок.

При обработке условия числа сравниваются алгебраически - отрицательные числа считаются меньшими, чем положительные, независимо от их абсолютной величины. Строки символов сравниваются в соответствии с их представлением в коде, используемом в конкретной СУБД, например, в коде ASCII. Если сравниваются две строки символов, имеющих разные длины, более короткая строка дополняется справа пробелами для того, чтобы они имели одинаковую длину перед осуществлением сравнения.

ПРИМЕР 9:

select name from food;

where name='f';

and mass=200

Результат запроса – список названий блюд, начинающихся на букву f и масса  порции которых равна 200 г из таблицы FOOD.DBF.

NAME

fish salat

ПРИМЕР 10:

select name from food;

where name='f';

or mass=200

Результат запроса – список названий блюд, начинающихся на букву f, или масса  порции которых равна 200 г из таблицы FOOD.DBF.

NAME

vagetable salat

meet salat

fish salat

fish soup

fish

coffe

milk

jouce

ПРИМЕР 11:

select name from food;

where name='f';

and not mass=200

Результат запроса – список названий блюд, начинающихся на букву f, и масса  порции которых не равна 200 г из таблицы FOOD.DBF.

NAME

fish soup

fish

ПРИМЕР 12:

select name from food;

where name='f';

or not mass=200

Результат запроса – список названий блюд, начинающихся на букву f, или масса  порции которых не равна 200 г из таблицы FOOD.DBF.

NAME

fish salad

fish soup

meat soup

meat

fish

apple

jogourt

Кроме традиционных операторов сравнения (= | <> | < | <= | > | >=) в WHERE фразе используются условия BETWEEN (между), LIKE (похоже на), IN (принадлежит), IS NULL (не определено) и EXISTS (существует), которые могут предваряться оператором NOT (не).

Использование BETWEEN

С помощью BETWEEN ... AND ... (находится в интервале от ... до ...) можно отобрать строки, в которых значение какого-либо столбца находятся в заданном диапазоне.

ПРИМЕР 13:

select name from food;

where mass between 100 and 200

Результат запроса - перечень блюд, масса порции которых находится в диапазоне от 100 г до 200 г:

NAME

vagetable salad

meat salad

fish salad

fish

apple

jogourt

coffee

milk

juice

ПРИМЕР 14:

select name from food;

where mass not between 100 and 200

Можно задать и NOT BETWEEN (не принадлежит диапазону между)

Результат запроса - перечень блюд, масса порции которых не находится в диапазоне от 100 г до 200 г:

NAME

fish soup

meat soup

meat

BETWEEN особенно удобен при работе с данными, задаваемыми интервалами, начало и конец которых расположен в разных столбцах.

ПРИМЕР 15:

select * from food;

where mass between 100 and 200;

And stoim between 40 and 50

Результат запроса - перечень блюд, масса порции которых не находится в диапазоне от 100 г до 200 г и стоимость в диапазоне от 40 до 50 рублей.

NOM

NAME

VID

PRODUCT

MASS

STOIM

2

meat salad

sn

meat

200,00

40

3

fish salad

sn

fish

200,00

40

7

fish

ho

fish

160,00

50

9

jogourt

de

jogourt

160,00

40

Использование IN

ПРИМЕР 16:

select * from food;

where vid in ("sn","de")

Результат запроса – список закусок и десертов.

NOM

NAME

VID

PRODUCT

MASS

STOIM

1

vagetable salad

sn

vagetable

200,00

30

2

meat salad

sn

meat

200,00

40

3

fish salad

sn

fish

200,00

40

8

Apple

de

apple

160,00

30

9

Jogourt

de

jogourt

160,00

40

Рассмотренная форма IN является в действительности просто краткой записью последовательности отдельных сравнений, соединенных операторами OR.

Предыдущее предложение эквивалентно такому:

select * from food;

where vid ="sn" or vid="de"

Можно задать и NOT IN (не принадлежит), а также возможность использования IN (NOT IN) с подзапросом.

Использование LIKE

ПРИМЕР 17:

select * from food;

where vid like "sn"

Результат запроса – список закусок.

NOM

NAME

VID

PRODUCT

MASS

STOIM

1

vagetable salad

sn

vagetable

200,00

30

2

meat salad

sn

Meat

200,00

40

3

fish salad

sn

Fish

200,00

40

Обычная форма "имя_столбца LIKE текстовая_константа" для столбца текстового типа позволяет отыскать все значения указанного столбца, соответствующие образцу, заданному "текстовой_константой". Символы этой константы интерпретируются следующим образом:

Примечание:

  1. символ _ (подчеркивание) заменяет любой одиночный символ,
  2. символ % (процент) заменяет любую последовательность из N символов (где N может быть нулем),
  3. все другие символы означают просто сами себя.

ПРИМЕР 18:

select * from food;

where name like "%sal%"

Результат запроса – список салатов.

NOM

NAME

VID

PRODUCT

MASS

STOIM

1

vagetable salad

sn

Vegetable

200,00

30

2

meat salad

sn

Meat

200,00

40

3

fish salad

sn

Fish

200,00

40

ПРИМЕР 19:

select * from food;

where name like "_i%"

Результат запроса – список блюд, в названии которых вторая буква i.

NOM

NAME

VID

PRODUCT

MASS

STOIM

3

fish salad

sn

Fish

200,00

40

4

fish soup

so

Fish

500,00

50

7

fish

ho

Fish

160,00

50

11

milk

dr

Milk

200,00

20

Агрегирование данных

SQL-функции

В SQL существует ряд специальных стандартных функций (SQL-функций). Кроме специального случая COUNT каждая из этих функций оперирует совокупностью значений столбца некоторой таблицы и создает единственное значение, определяемое так:

COUNT

- число значений в столбце,

SUM

- сумма значений в столбце,

AVG

- среднее значение в столбце,

MAX

- самое большое значение в столбце,

MIN

- самое малое значение в столбце.

Для функций SUM и AVG рассматриваемый столбец должен содержать числовые значения.

Следует отметить, что здесь столбец - это столбец виртуальной таблицы, в которой могут содержаться данные не только из столбца базовой таблицы, но и данные, полученные путем функционального преобразования и (или) связывания символами арифметических операций значений из одного или нескольких столбцов. При этом выражение, определяющее столбец такой таблицы, может быть сколь угодно сложным, но не должно содержать SQL-функций (вложенность SQL-функций не допускается). Однако из SQL-функций можно составлять любые выражения.

Аргументу всех функций, кроме COUNT, может предшествовать ключевое слово DISTINCT (различный), указывающее, что избыточные дублирующие значения должны быть исключены перед тем, как будет применяться функция. Специальная же функция COUNT служит для подсчета всех без исключения строк в таблице (включая дубликаты).

Фраза  GROUP BY

GROUP BY инициирует перекомпоновку формируемой таблицы по группам, каждая из которых имеет одинаковое значение в столбцах, включенных в перечень GROUP BY. Далее к этим группам применяются агрегирующие функции, указанные во фразе SELECT (SUM (сумма), COUNT (количество), MIN (минимальное значение), MAX (максимальное значение) или AVG (среднее значение)), что приводит к замене всех значений группы на единственное значение (сумма, количество и т.п.).

ПРИМЕР 20:

select vid, sum(mass) FROM food;

group BY vid

Результат запроса – список блюд, масса порций которых находится в диапазоне от 100 г до 200 г, с дополнительным полем SUMMA, в котором вычислена суммарная  масса сгруппированных по названию главного продукта порций.

NOM

NAME

VID

PRODUCT

MASS

STOIM

SUMMA

11

milk

dr

milk

200,00

20

200,00

8

apple

de

apple

160,00

30

160,00

10

coffee

dr

coffee

200,00

10

200,00

7

fish

ho

fish

160,00

50

360,00

9

jogourt

de

jogourt

160,00

40

160,00

12

juice

dr

juice

200,00

20

200,00

2

meat salad

sn

meat

200,00

40

200,00

1

vagetable salad

sn

vagetable

200,00

30

200,00

С помощью фразы HAVING (синтаксис которой почти не отличается от синтаксиса фразы WHERE) [NOT] HAVING_условие [[AND|OR][NOT] HAVING_условие]... можно исключить из результата группы, не удовлетворяющие заданным условиям

ПРИМЕР 21:

select *, sum(mass) As summa from food;

Group By product;

having not mass = 160

Результат запроса – список блюд с дополнительным полем SUMMA, в котором вычислена суммарная  масса сгруппированных по названию главного продукта порций, за исключением блюд, масса которых равна 160 г.

NOM

NAME

VID

PRODUCT

MASS

STOIM

SUMMA

11

milk

dr

milk

200,00

20

200,00

10

coffee

dr

coffee

200,00

10

200,00

12

juice

dr

juice

200,00

20

200,00

6

meat

ho

meat

210,00

60

910,00

1

vagetable salad

sn

vagetable

200,00

30

200,00


 

А также другие работы, которые могут Вас заинтересовать

25751. Аудит кассовых операций 51 KB
  Цель аудита кассовых операций: установление соответствия применяемой в организации методики бух учета действующей в проверяемом периоде и нормативным документам. проверка своевременного и полного отражения в БУ операций с ДС при соблюдении требований законодательства 2. правильное документальное оформление операций с ДС контроль за сохранностью ДС документов в кассе 3.
25752. Аудит затрат на производство продукции (работ‚ услуг) 50.5 KB
  Методика и цели преследуемые при проведении аудита предполагают проверку надежности учетной информации; точности достоверности и полноты отражения отдельных элементов и статей затрат; выявления случаев нарушения достоверности общей калькуляции себестоимости товарной продукции и результатов хозяйственной деятельности; соблюдения требований вытекающих из специфики проверяемого хозяйствующего субъекта; ограничений учетного периода; оценку общей информации представленной в финансовой отчетности а также применение и раскрытие принципов...
25753. Аудит учета основных средств 29 KB
  проверка договоров и первичной документации их наличие и движении 2. проверка правильности оценки и переоценки ос 3. проверка полноты оприходования и правильности отражения в учет регистрах хоз операций по перемещению и выбытию 4. проверка соблюдений условий для отнесения имущества к оснк РФ пбу 601 классификатор 2.
25754. Аудит продажи и финансовых результатов деятельности организации 36 KB
  Положение по ведению бухгалтерского учета и бухгалтерской отчетности в РФ Приказ МФ РФ № 34н от 29 июля 1998 г. План счетов бухгалтерского учета и Инструкция по его применению Приказ МФ РФ № 94н от 31 октября 2000 г. Аудит учета финансовых результатов и их использования. Объектом проверки финансовых результатов является бухгалтерская прибыль убыток представляющая собой конечный финансовый результат выявленный за отчетный период на основании бухгалтерского учета всех хозяйственных операций организации и оценки статей бухгалтерского...
25755. Аудит кредитов 52.5 KB
  Задачи аудита кредитов займов и средств целевого финансирования: изучение кредитных договоров договоров залога договоров займа источников поступления средств целевого финансирования; оценка состояния синтетического и аналитического учета кредитов займов и средств целевого финансирования; изучение правомерного расходования средств кредитов займов целевого финансирования; установление правильности отражения на счетах бухгалтерского учета и в бухгалтерской отчетности кредитов займов и средств целевого финансирования; проверка...
25756. Аудит расчетов с бюджетом 32.5 KB
  Налоговая инспекция имеет право перепроверить правильность представленного аудиторами заключения в случаях если ею будет установлена недоброкачественность аудита приведшая к ущемлению интересов бюджета. Аудитору необходимо проверить: правильно ли исчислены налогооблагаемые базы; правильность исчисления прибыли переходного периода; правильно ли применены ставки налогов и платежей; своевременно ли и полностью уплачены платежи в бюджет; правильно ли и обоснованно применены льготы; правильно ли ведется аналитический и синтетический...
25757. Аудит расчетов с персоналом по оплате труда 78.5 KB
  Целью аудита расчетов по оплате труда является установление соответствия применяемой в организации методики учета и налогообложения операций по оплате труда и расчетов с персоналом действующим в РФ нормативным документам. Основные задачи аудита: оценка существующей в организации системы расчетов с персоналом и ее эффективности; оценка состояния синтетического и аналитического учета операций по оплате труда и расчетов с персоналом организации в проверяемом периоде; оценка полноты отражения совершенных операций в бухгалтерском учете;...
25758. Аудит расчетов с поставщиками и покупателями 33.5 KB
  Этому участку учета свойственны определенные факторы риска обусловленные следующими причинами: отсутствие многократного контроля за первичными документами на стадии их создания и проверки как это происходит с документацией создаваемой на предприятии; сложность восстановления отсутствующих и исправления неправильно оформленных документов; большая вероятность несвоевременного поступления подтверждающих документов; отсутствие унификации значительной части первичных документов подтверждающих совершение этих операций особенно операций...
25759. Аудит учредительных документов и расчетов с учредителями организации 33.5 KB
  Задачами аудита учредительных документов являются: Изучение статуса юридического лица организации сферы деятельности и права его функционирования; Изучение наличия лицензий по видам деятельности; Проверка порядка формирования изменения уставного капитала и изучение его структуры. № 128ФЗ О лицензировании отдельных видов деятельности; Федеральный закон от 08. № 129ФЗ О государственной регистрации юридических лиц и индивидуальных предпринимателей; План счетов бухгалтерского учета финансовохозяйственной деятельности организаций...