Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.76/25: Рейтинг темы: голосов - 25, средняя оценка - 4.76
 Аватар для Kaktuc
1 / 1 / 0
Регистрация: 01.01.2023
Сообщений: 141
MS SQL

Как сделать create table?

03.04.2023, 08:39. Показов 6405. Ответов 105
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день, подскажите пожалуйста как мне в с#описать функцию create table спасибо
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.04.2023, 08:39
Ответы с готовыми решениями:

create table
язык С# visual studio 2008 есть проблема с которой справиться немогу прошу помощи господа неоходимо допустим при клике на кнопку...

Create Table в C#
Ничего не понимаю Пытаюсь создать таблицу через SQL запрос и получаю ошибку, скажите что у меня не так?

Конструирование динамического запроса CREATE TABLE
Здравствуйте! Начал изучать базы данных. Предположим, есть строчка запроса, которая была на одном из форумов: SqlCommand...

105
 Аватар для Kaktuc
1 / 1 / 0
Регистрация: 01.01.2023
Сообщений: 141
03.04.2023, 16:43  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Andrey-MSK Посмотреть сообщение
А зачем вывод консоли сборки? Я вам про точки останова в режиме Debug и про пошаговое выполнение программы, начиная с точки останова через все интересующие части кода. И что находится в нужных для вывода данных переменных.
Не сочтите за глупость какие именно указать точки остановки? (в самом скрипте)

Добавлено через 47 секунд
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Скопируйте текст запроса в SSMS, выполните его и посмотрите на результат - будут там данные или только сообщения вида "N rows affected".
Текс всего запроса или определенной его части?
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18417 / 14348 / 5371
Регистрация: 17.03.2014
Сообщений: 29,032
Записей в блоге: 1
03.04.2023, 16:47
Цитата Сообщение от Kaktuc Посмотреть сообщение
Текс всего запроса или определенной его части?
Текст запроса из MySelectCommand5

Добавлено через 59 секунд
Цитата Сообщение от Kaktuc Посмотреть сообщение
Не сочтите за глупость какие именно указать точки остановки? (в самом скрипте)
Как пользоваться отладчиком (в Visual Studio)
0
 Аватар для Kaktuc
1 / 1 / 0
Регистрация: 01.01.2023
Сообщений: 141
03.04.2023, 16:50  [ТС]
Вот что я выбрал
Code
1
2
3
4
5
6
7
8
CREATE TABLE #PR1(Job bigint, Suffix smallint, StatusRus nvarchar(100), StartDate datetime, EndDate datetime, BuhOrderCode nvarchar(100), BuhOrderDesc nvarchar(100), 
ItemID int, SLCode nvarchar(100), FullName nvarchar(500), ItemTypesID int, SN nvarchar(100), ProcessName nvarchar(100), [Route] nvarchar(100), 
IsTargetItem int, JobOperationID int, QtyReleased numeric(18, 8), QtyComplete numeric(18, 8), ElemNum int, WC int, WorksAspect nvarchar(100), SiteWC nvarchar(100), 
[Operation] nvarchar(100), Equipment nvarchar(100), EqModelPower nvarchar(100), Payable nvarchar(100), CorrectFactor numeric(18, 8), Profession nvarchar(100), 
PerformersQty int, [Rank] int, Valuation numeric(18, 8), Laboriousness numeric(18, 8), HasClosedOpers int, Reason nvarchar(100)) 
insert into #PR1 (Job, Suffix, StatusRus, StartDate, EndDate, BuhOrderCode, BuhOrderDesc, ItemID, SLCode, FullName, ItemTypesID, SN, ProcessName, [Route], JobOperationID, QtyReleased, QtyComplete, ElemNum, WC, WorksAspect, SiteWC, [Operation], Equipment, EqModelPower, Payable, CorrectFactor, Profession, PerformersQty, [Rank], Valuation, Laboriousness, HasClosedOpers, Reason) 
EXECUTE dbo.GetRptPurpleTrud '2023-04-01', '2023-04-30', 207000, null;
delete from #pr1 where Laboriousness = 0
Вот что я получил
Code
1
2
Сообщение 2714, уровень 16, состояние 6, строка 1
There is already an object named '#PR1' in the database.
Добавлено через 1 минуту
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Как пользоваться отладчиком (в Visual Studio)
на выбранной точке она просто останавливается
0
 Аватар для Andrey-MSK
3397 / 2283 / 388
Регистрация: 14.08.2018
Сообщений: 7,768
Записей в блоге: 4
03.04.2023, 16:51
Цитата Сообщение от Kaktuc Посмотреть сообщение
Не сочтите за глупость какие именно указать точки остановки?
ПКМ на строке кода C# -> Breakpoint -> Insert Breakpoint. Затем запустить выполнение в режиме Debug, выполнение дойдёт до этой точки и остановится. Все переменные до точки и в самой точке будут заполнены данными. Вот там и посмотреть, навести мышь на переменную и увидите её данные. Если нужно продолжить дальше по шагам, нажать Next Step в панели студии.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18417 / 14348 / 5371
Регистрация: 17.03.2014
Сообщений: 29,032
Записей в блоге: 1
03.04.2023, 17:34
Цитата Сообщение от Kaktuc Посмотреть сообщение
Вот что я получил
Code
1
2
Сообщение 2714, уровень 16, состояние 6, строка 1
There is already an object named '#PR1' in the database.
Значит выполните DROP TABLE #PR1 сначала.
0
 Аватар для Kaktuc
1 / 1 / 0
Регистрация: 01.01.2023
Сообщений: 141
04.04.2023, 08:27  [ТС]
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Значит выполните DROP TABLE #PR1 сначала.
Если дроп не делать, а просто закомментировать криейт тайбл, если я понимаю таблица уже существует, она наполнена информацией. той моя задача остается вывести данные с нее т.е. поля указанные в селекте.
Я попробывал закомментировали вылитела ошибка что
System.ArgumentException: "Столбец "Description" не принадлежит таблице ."
Добавлено через 10 минут
Description я законментировал ошибка не вылитает, но все равно не выводит данные в ексель
0
 Аватар для Andrey-MSK
3397 / 2283 / 388
Регистрация: 14.08.2018
Сообщений: 7,768
Записей в блоге: 4
04.04.2023, 08:29
Kaktuc,
Название временной таблицы начинается со знака решетки #. Если используется один знак #, то создается локальная таблица, которая доступна в течение текущей сессии.

При закрытии соединения сессия обрывается. Поэтому мы вам и пытаемся сказать - проверьте данные в Debug, есть там в коллекции что-то или нет...

Проверить существование таблицы можно так
T-SQL
1
2
3
4
IF OBJECT_ID('#PR1', 'U') IS NOT NULL  
  DROP TABLE #PR1;
 
CREATE TABLE #PR1 (..., ...)
Добавлено через 2 минуты
Проверка существования объекта
0
 Аватар для Kaktuc
1 / 1 / 0
Регистрация: 01.01.2023
Сообщений: 141
04.04.2023, 08:41  [ТС]
Даже после закрытия соединения я смотрю базу
Select SiteWC, buhOrderDesc, sn from #PR1
Ответ
..... ..... ..... .........
Участок №23 /Бриг.№4 (уголки, швеллера) Запасные части транспорта
Участок №38 /Бриг.№12 (люльки, борта) Агрегат АВФ 046
Участок №38 /Бриг.№12 (люльки, борта) Агрегат АВФ 046
..... ..... ..... .........
Добавлено через 1 минуту
просто снести сейчас всю таблицу с данными както не очень...
0
 Аватар для Andrey-MSK
3397 / 2283 / 388
Регистрация: 14.08.2018
Сообщений: 7,768
Записей в блоге: 4
04.04.2023, 08:49
Kaktuc, Сделайте хранимую процедуру, которая будет возвращать нужные данные, напишите метод, который загружает эти данные в коллекцию и потом уже с этой коллекцией делайте что хотите.

Добавлено через 3 минуты
Kaktuc, Простейший пример
Хранимка
T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
ALTER PROC [dbo].[spM29SelectDrawSummarySpec]
    @drawID int
AS
BEGIN
    SELECT
        m.ID_DrawSummarySpec AS SummaryID, m.ID_Draw AS DrawID, m.KKS, m.Designation, m.PosName,
        m.Material, m.Quantity, m.Measure, m.UnitWeight
    FROM
        dbo.tblM29DrawSummarySpec m
    WHERE
        m.ID_Draw = @drawID
END
Метод
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
public async Task<List<MDrawSummarySpec>> GetDrawSummaryListAsync(Draw draw)
{
    List<MDrawSummarySpec> specs = new List<MDrawSummarySpec>();
    string sqlText = "dbo.spM29SelectDrawSummarySpec";
 
    try
    {
        using (SqlConnection sqlConnection = new SqlConnection(_connectionString))
        {
            await sqlConnection.OpenAsync();
 
            using (SqlCommand sqlCommand = new SqlCommand(sqlText, sqlConnection) { CommandType = CommandType.StoredProcedure })
            {
                SqlParameter pDrawID = new SqlParameter
                {
                    ParameterName = "@drawID",
                    Value = draw.DrawID,
                    SqlDbType = SqlDbType.Int,
                    Direction = ParameterDirection.Input
                };
                sqlCommand.Parameters.Add(pDrawID);
 
                using (SqlDataReader sqlDataReader = await sqlCommand.ExecuteReaderAsync())
                {
                    if (sqlDataReader.HasRows)
                    {
                        while (await sqlDataReader.ReadAsync())
                        {
                            specs.Add(new MDrawSummarySpec
                            {
                                SummaryID = (int)sqlDataReader["SummaryID"],
                                DrawID = (int)sqlDataReader["DrawID"],
                                KKS = sqlDataReader["KKS"]
                                    == DBNull.Value ? null : (string)sqlDataReader["KKS"],
                                Designation = sqlDataReader["Designation"]
                                    == DBNull.Value ? null : (string)sqlDataReader["Designation"],
                                PosName = (string)sqlDataReader["PosName"],
                                Material = sqlDataReader["Material"]
                                    == DBNull.Value ? null : (string)sqlDataReader["Material"],
                                Quantity = (double)sqlDataReader["Quantity"],
                                Measure = (string)sqlDataReader["Measure"],
                                UnitWeight = (double)sqlDataReader["UnitWeight"]
                            });
                        }
                    }
                }
            }
        }
 
        return specs = specs
            .OrderBy(s => s.PosName, new NaturalStringComparer())
            .ThenBy(s => s.Designation, new NaturalStringComparer())
            .ToList();
    }
    catch (SqlException sqlEx)
    {
        throw new ApplicationException(string.Format("T-SQL #{0} - {1}", sqlEx.Number, sqlEx.Message));
    }
    catch (Exception ex)
    {
        throw new ApplicationException(ex.Message);
    }
}
0
 Аватар для Kaktuc
1 / 1 / 0
Регистрация: 01.01.2023
Сообщений: 141
04.04.2023, 09:02  [ТС]
Цитата Сообщение от Andrey-MSK Посмотреть сообщение
Kaktuc, Сделайте хранимую процедуру, которая будет возвращать нужные данные, напишите метод, который загружает эти данные в коллекцию и потом уже с этой коллекцией делайте что хотите.
Я просто действительно не понимаю зачем делать дроп? если сама база рабочая чтото с выводом я намутил....
0
 Аватар для Andrey-MSK
3397 / 2283 / 388
Регистрация: 14.08.2018
Сообщений: 7,768
Записей в блоге: 4
04.04.2023, 09:18
Цитата Сообщение от Kaktuc Посмотреть сообщение
зачем делать дроп
Потому что это временная таблица, она нужна только для сиюминутного расчёта.
Если всё сделать в хранимке, то вначале создаёте там таблицу, выполняете действия, возвращаете SELECT и затем удаляете эту таблицу. Либо при создании проверяете на наличие этой таблицы и если она есть то удаляете её.
Если нужно хранить эти данные, то используйте физическую таблицу.
1
 Аватар для Kaktuc
1 / 1 / 0
Регистрация: 01.01.2023
Сообщений: 141
04.04.2023, 09:29  [ТС]
при дебаги с точками я расставил точки в таких позициях
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
using System;
using System.ComponentModel;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using NativeExcel;
using System.Reflection;
using System.Data.SqlClient;
using System.Data;
 
 
namespace Exp_Exel
{
    public partial class Frm_Analiz_znp : Form
    {
        public Frm_Analiz_znp()
        {
            InitializeComponent();
        }
 
        private void Button1_Click(object sender, EventArgs e)
        {
            string MyComboData2 = (string)comboBox2.SelectedItem; /*подразделение*/
            DateTime MyDateData_c = dateTimePicker1.Value;
            DateTime MyDateData_po = dateTimePicker2.Value;
 
            //Вызов Экселя//
            string Path = System.Windows.Forms.Application.StartupPath + "\\Data\\";
            IWorkbook book = NativeExcel.Factory.OpenWorkbook(Path + "VesZNP.xls");
            Path = @"\\Docx\report\";
            string file_name = Path + DateTime.Now.ToFileTime().ToString() + "VesZNP.xls";
 
 
            book.SaveAs(file_name);
            book = NativeExcel.Factory.OpenWorkbook(file_name);
            IWorksheet MySheet = book.ActiveSheet;
            IRange range = MySheet.Range[1, 1, 1, 1];
            range.Rows.RowHeight = 1;
 
            MySheet.Cells[2, 1].Value = "Плановая трудоемкость по участкам и по машинам " + MyComboData2 + " за период с " + Convert.ToDateTime(MyDateData_c.Date.ToString().Substring(0, 10)) + " по " + Convert.ToDateTime(MyDateData_po.Date.ToString().Substring(0, 10));
 
            int i = 6;
 
            //Подключение к БД "test"//
            [COLOR="Red"]Connection_manager.Set_Connection("Data Source=test;Initial Catalog=test;Persist Security Info=True;User ID=roor; Password = password987654321");[/COLOR]
            Connection_manager.Set_month("10");
            DialogResult = DialogResult.OK;
 
            //подключение SQL - вывожу результат//
            SqlConnection MyConnection5 = Connection_manager.GetCurrentConnection();
            SqlCommand MySelectCommand5 = new SqlCommand();
 
           /* MySelectCommand5.CommandText = @"select distinct i.SlCode, i.FullName, i.SlCode + ' (' + i.FullName + ')' as Description 
 from viewjobelement je, job j, test.dbo.viewitems i, jobmatl jm
 where je.job = j.job and je.suffix = j.suffix and je.wcid = '" + MyComboData2 + @"' and enddate >= @MyDateParam1 and enddate <= @MyDateParam2
 and jm.job = j.job and jm.suffix = j.suffix and jm.itemID = i.ConstID and i.ItemTypesID = 4
 order by i.FullName";*/
 
           [COLOR="red"] MySelectCommand5.CommandText = @"CREATE TABLE #PR1(Job bigint, Suffix smallint, StatusRus nvarchar(100), StartDate datetime, EndDate datetime, BuhOrderCode nvarchar(100), BuhOrderDesc nvarchar(100), 
ItemID int, SLCode nvarchar(100), FullName nvarchar(500), ItemTypesID int, SN nvarchar(100), ProcessName nvarchar(100), [Route] nvarchar(100), 
IsTargetItem int, JobOperationID int, QtyReleased numeric(18, 8), QtyComplete numeric(18, 8), ElemNum int, WC int, WorksAspect nvarchar(100), SiteWC nvarchar(100), 
[Operation] nvarchar(100), Equipment nvarchar(100), EqModelPower nvarchar(100), Payable nvarchar(100), CorrectFactor numeric(18, 8), Profession nvarchar(100), 
PerformersQty int, [Rank] int, Valuation numeric(18, 8), Laboriousness numeric(18, 8), HasClosedOpers int, Reason nvarchar(100)) 
insert into #PR1 (Job, Suffix, StatusRus, StartDate, EndDate, BuhOrderCode, BuhOrderDesc, ItemID, SLCode, FullName, ItemTypesID, SN, ProcessName, [Route], JobOperationID, QtyReleased, QtyComplete, ElemNum, WC, WorksAspect, SiteWC, [Operation], Equipment, EqModelPower, Payable, CorrectFactor, Profession, PerformersQty, [Rank], Valuation, Laboriousness, HasClosedOpers, Reason) 
EXECUTE dbo.GetRptPurpleTrud '2023-03-01', '2023-03-30', 207000, null;
delete from #pr1 where Laboriousness = 0";[/COLOR]
         
 
            MySelectCommand5.Parameters.Add("@MyDateParam1", SqlDbType.DateTime);
            MySelectCommand5.Parameters["@MyDateParam1"].Value = MyDateData_c.Date;
            MySelectCommand5.Parameters.Add("@MyDateParam2", SqlDbType.DateTime);
            MySelectCommand5.Parameters["@MyDateParam2"].Value = MyDateData_po.Date;
            MySelectCommand5.Connection = MyConnection5;
            MySelectCommand5.CommandTimeout = 0;
            System.Data.DataTable MyConnteyner5 = new System.Data.DataTable();
            SqlDataAdapter MyAdapter5 = new SqlDataAdapter(MySelectCommand5);
            MyAdapter5.Fill(MyConnteyner5);
            if (MyConnteyner5.Rows.Count > 0)
            {
                foreach (DataRow MyRow5 in MyConnteyner5.Rows)
                {
                    MySheet.Cells[i, 1].Value = MyRow5["Description"];
                    MySheet.Cells[i, 1].Font.Bold = true;
                    i = i + 2;
                                       i++;
 
                    SqlConnection MyConnection1 = Connection_manager.GetCurrentConnection();
                    SqlCommand MySelectCommand1 = new SqlCommand();
                    [COLOR="red"]MySelectCommand1.CommandText = @"Update #PR1 set #PR1.qtyreleased = #PR1.qtyreleased - jobtranoper.QtyCompleteDelta
from jobtranoper
where jobtranoper.joboperationid = #PR1.joboperationid and #PR1.startdate < '2023-04-01' and jobtranoper.FactualDate < '2023-04-01' delete from #PR1 where qtyreleased = 0";
                    MySelectCommand1.CommandText = @"delete FROM #PR1 WHERE statusrus = 'Отменено' and qtycomplete = 0 and job not in,select jto.job, from JobTranOper jto where jto.job = #PR1.job and rowdate >= '2023-04-01' and rowdate <= '2023-04-30' delete from #PR1 where qtyreleased = 0";
                    MySelectCommand1.CommandText = @"select SiteWC, buhOrderDesc, sn, sum(#PR1.qtyreleased * #PR1.performersqty * #PR1.Laboriousness) as norma, 
sum(#PR1.qtyreleased * #PR1.Valuation) as summa from #PR1
group by SiteWC, sn, buhOrderDesc
Order by SiteWC, sn, buhOrderDesc";[/COLOR]
 
                    MySelectCommand1.Parameters.Add("@MyDateParam1", SqlDbType.DateTime);
                    MySelectCommand1.Parameters["@MyDateParam1"].Value = MyDateData_c.Date;
                    MySelectCommand1.Parameters.Add("@MyDateParam2", SqlDbType.DateTime);
                    MySelectCommand1.Parameters["@MyDateParam2"].Value = MyDateData_po.Date;
                    MySelectCommand1.Connection = MyConnection1;
                    MySelectCommand1.CommandTimeout = 0;
                    System.Data.DataTable MyConnteyner1 = new System.Data.DataTable();
                    SqlDataAdapter MyAdapter1 = new SqlDataAdapter(MySelectCommand1);
                    MyAdapter1.Fill(MyConnteyner1);
                    if (MyConnteyner1.Rows.Count > 0)
                    {
                        decimal summ = 0;
                        foreach (DataRow MyRow1 in MyConnteyner1.Rows)
                        {
                            MySheet.Cells[i, 1].Value = MyRow1["job"]; // job
                            MySheet.Cells[i, 2].Value = MyRow1["suffix"]; //suffix
                            MySheet.Cells[i, 3].Value = MyRow1["slcode"]; //slcode
                            MySheet.Cells[i, 4].Value = MyRow1["fullname"]; //fullname
                           [COLOR="red"] MySheet.Cells[i, 5].Value = MyRow1["SiteWC"]; //qtyreleased
                            MySheet.Cells[i, 6].Value = MyRow1["buhOrderDesc"]; //qtycomplete
                            MySheet.Cells[i, 7].Value = MyRow1["sn"]; //quantity
                            MySheet.Cells[i, 8].Value = MyRow1["summa"]; // summa[/COLOR]
                            MySheet.Cells[i, 9].Value = MyRow1["UnitMeasure"]; //unitmeasure
                                                                               //    MySheet.Cells[i, 10].Value = MyRow1[""]; 
                                                                               //  MySheet.Cells[i, 11].Value = MyRow1[""];
                                                                               //  MySheet.Cells[i, 12].Value = MyRow1[""];
                                                                               //  MySheet.Cells[i, 13].Value = MyRow1[""];
                                                                               //  MySheet.Cells[i, 14].Value = MyRow1[""];
                                                                               //  MySheet.Cells[i, 15].Value = MyRow1[""];
                            summ = summ + Convert.ToDecimal(MyRow1["summa"].ToString());
                            range = MySheet.Range[i, 1, i, 9];
                            range.Borders[XlBordersIndex.xlAround].ColorIndex = XlColorIndex.xlColorIndexAutomatic;
                            range.Borders[XlBordersIndex.xlInsideAll].ColorIndex = XlColorIndex.xlColorIndexAutomatic;
                            i++;
                        }
 
                    }
 
                }
            }
 
            book.SaveAs(file_name);
            System.Diagnostics.Process.Start(file_name);
 
 
            Close();
 
        }
 
       private void ComboBox2_DropDown(object sender, EventArgs e)
        {
            //заполнение комбо-бокса Склад//
            SqlConnection MyConnection6 = Connection_manager.GetCurrentConnection();
            SqlCommand MySelectCommand6 = new SqlCommand();
            string zamena5 = comboBox2.Text.Replace("*", "%");
            MySelectCommand6.CommandText = @"select ID as whse
                                             from test2.dbo.WC
                                             where (ShortName in ('1', '2', '4', '5', '7') and WCPlot like '%000') or WCPlot = '206203' order by cast(ShortName as int)";
            MySelectCommand6.Connection = MyConnection6;
            System.Data.DataTable MyConnteyner6 = new System.Data.DataTable();
            SqlDataAdapter MyAdapter6 = new SqlDataAdapter(MySelectCommand6);
            MyAdapter6.Fill(MyConnteyner6);
            comboBox2.Items.Clear();
            foreach (DataRow MyRow6 in MyConnteyner6.Rows)
            {
                comboBox2.Items.Add(MyRow6["whse"].ToString());
            }
        }
 
 
        private void Frm_Analiz_znp_Load(object sender, EventArgs e)
        {
            var yr = DateTime.Today.Year;
            var mth = DateTime.Today.Month;
            var firstDay = new DateTime(yr, mth, 1).AddMonths(-1).AddMonths(1);
            var lastDay = new DateTime(yr, mth, 1).AddDays(0).AddMonths(1);
 
            dateTimePicker1.Value = firstDay;
            dateTimePicker2.Value = lastDay;
        }
 
        private void Button2_Click(object sender, EventArgs e)
        {
            Frm_Help MyFrm1 = new Frm_Help();
            MyFrm1.ShowDialog();
        }
 
        private void ComboBox2_SelectedIndexChanged(object sender, EventArgs e)
        {
        
        }
    }
}
Первые 2 точки я проклацал, а на третей выкинуло меня

Добавлено через 4 минуты
Цитата Сообщение от Andrey-MSK Посмотреть сообщение
Если нужно хранить эти данные, то используйте физическую таблицу.
ну на данный момент это физичиская уже таблица, ибо я не могу пока вывести данные по этому она физическая
0
 Аватар для Andrey-MSK
3397 / 2283 / 388
Регистрация: 14.08.2018
Сообщений: 7,768
Записей в блоге: 4
04.04.2023, 09:34
Цитата Сообщение от Kaktuc Посмотреть сообщение
C#
1
foreach (DataRow MyRow5 in MyConnteyner5.Rows)
Вы решили заспамить БД запросами в цикле?
Цитата Сообщение от Kaktuc Посмотреть сообщение
C#
1
MySelectCommand1.CommandText
И как вы думаете, какой из трёх запросов выполнится? Вы все три запроса присваиваете ОДНОЙ команде...

Жесть конечно... Работать надо не с элементами UI, а с коллекциями и объектами данных. И уже потом коллекции и объекты привязывать к UI.

Добавлено через 1 минуту
Цитата Сообщение от Kaktuc Посмотреть сообщение
ну на данный момент это физичиская уже таблица
CREATE TABLE #PR1 - ну никак не физическая...
0
 Аватар для Kaktuc
1 / 1 / 0
Регистрация: 01.01.2023
Сообщений: 141
04.04.2023, 09:37  [ТС]
Цитата Сообщение от Andrey-MSK Посмотреть сообщение
CREATE TABLE #PR1 - ну никак не физическая...
ну она существует даже когда я не в программе

Добавлено через 30 секунд
Цитата Сообщение от Andrey-MSK Посмотреть сообщение
И как вы думаете, какой из трёх запросов выполнится? Вы все три запроса присваиваете ОДНОЙ команде...
Жесть конечно... Работать надо не с элементами UI, а с коллекциями и объектами данных. И уже потом коллекции и объекты привязывать к UI.
ЧТо подскажите делать?
0
 Аватар для Andrey-MSK
3397 / 2283 / 388
Регистрация: 14.08.2018
Сообщений: 7,768
Записей в блоге: 4
04.04.2023, 09:53
Цитата Сообщение от Kaktuc Посмотреть сообщение
ЧТо подскажите делать?
Прочитать про привязку данных в Windows Forms.

Добавлено через 4 минуты
Цитата Сообщение от Kaktuc Посмотреть сообщение
ну она существует даже когда я не в программе
У вас SSMS открыт с тем окном, где вы тестировали этот запрос? Если да, то вот таблица и не удаляется, так как SSMS удерживает сессию. Закройте SSMS или просто отключитесь от сервера, это сбросит сессию и потом этой таблицы уже не будет.

И разберитесь с тремя запросами одной команде, там жуть...

Добавлено через 8 минут
Kaktuc, Вот книга - Брайан Нойес: Привязка данных в Windows Forms.
0
 Аватар для Kaktuc
1 / 1 / 0
Регистрация: 01.01.2023
Сообщений: 141
04.04.2023, 12:59  [ТС]
я разобрался почти=)

Добавлено через 22 минуты
все таки мне кажется что с Визуале функция криейт тейбл не срабатывает

Добавлено через 2 часа 15 минут
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Значит выполните DROP TABLE #PR1 сначала.
DROP TABLE #PR1
SQL
1
2
Сообщение 3701, уровень 11, состояние 5, строка 3
Cannot DROP the TABLE '#PR1', because it does NOT exist OR you do NOT have permission.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18417 / 14348 / 5371
Регистрация: 17.03.2014
Сообщений: 29,032
Записей в блоге: 1
04.04.2023, 13:16
Цитата Сообщение от Kaktuc Посмотреть сообщение
Cannot DROP the TABLE '#PR1', because it does NOT exist OR you do NOT have permission.
Вы понимаете текст ошибки?
0
 Аватар для Kaktuc
1 / 1 / 0
Регистрация: 01.01.2023
Сообщений: 141
04.04.2023, 13:19  [ТС]
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Вы понимаете текст ошибки?
Не возможно дропнуть таблицу т.к. не существует или нет прав


т.е. получается что эта строка не работает или работает просто нет прав?
C#
1
   MySelectCommand5.CommandText = "CREATE TABLE #PR1 (Job bigint, Suffix smallint, StatusRus nvarchar(100), StartDate datetime, EndDate datetime, BuhOrderCode nvarchar(100), BuhOrderDesc nvarchar(100), ItemID int, SLCode nvarchar(100), FullName nvarchar(500), ItemTypesID int, SN nvarchar(100), ProcessName nvarchar(100), [Route] nvarchar(100), IsTargetItem int, JobOperationID int, QtyReleased numeric(18, 8), QtyComplete numeric(18, 8), ElemNum int, WC int, WorksAspect nvarchar(100), SiteWC nvarchar(100), [Operation] nvarchar(100), Equipment nvarchar(100), EqModelPower nvarchar(100), Payable nvarchar(100), CorrectFactor numeric(18, 8), Profession nvarchar(100), PerformersQty int, [Rank] int, Valuation numeric(18, 8), Laboriousness numeric(18, 8), HasClosedOpers int, Reason nvarchar(100)) insert into #PR1 (Job, Suffix, StatusRus, StartDate, EndDate, BuhOrderCode, BuhOrderDesc, ItemID, SLCode, FullName, ItemTypesID, SN, ProcessName, [Route], JobOperationID, QtyReleased, QtyComplete, ElemNum, WC, WorksAspect, SiteWC, [Operation], Equipment, EqModelPower, Payable, CorrectFactor, Profession, PerformersQty, [Rank], Valuation, Laboriousness, HasClosedOpers, Reason) EXECUTE dbo.GetRptPurpleTrud '2023-04-01', '2023-04-30', 207000, null";
0
1341 / 920 / 265
Регистрация: 08.08.2014
Сообщений: 2,775
04.04.2023, 13:24
Цитата Сообщение от Kaktuc Посмотреть сообщение
т.е. получается что эта строка не работает или работает просто нет прав?
Или же после 'create' вы закрываете подключение и сервер удаляет временную таблицу, как и сказано в документации на временные таблицы.

https://learn.microsoft.com/en... ary-tables
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18417 / 14348 / 5371
Регистрация: 17.03.2014
Сообщений: 29,032
Записей в блоге: 1
04.04.2023, 13:42
Лучший ответ Сообщение было отмечено Kaktuc как решение

Решение

Цитата Сообщение от Kaktuc Посмотреть сообщение
Не возможно дропнуть таблицу т.к. не существует или нет прав
Да. Ваша временная таблица была удалена.

1. Вы точно уверены что вам нужна именно временная таблица?
2. Вы точно уверены что вам нужно создавать таблицу из кода? Почему не создать заранее обычную таблицу в БД?

Цитата Сообщение от Kaktuc Посмотреть сообщение
т.е. получается что эта строка не работает или работает просто нет прав?
Если вспомните, то именно я как раз предлагал вам проверить что возвращает ваш запрос. Цитата:
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Скопируйте текст запроса в SSMS, выполните его и посмотрите на результат - будут там данные или только сообщения вида "N rows affected".
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.04.2023, 13:42

Ошибка при выполнении CREATE TABLE: Число префиксов превышает максимально допустимое значение
Ребят помогите пожалуйста( раньше код работал сейчас же проблема( Вот сам код: using (SqlConnection conn = new...

DROOP TABLE и CREATE TABLE в ACCESS
Как использовать конструкции DROOP TABLE и CREATE TABLE в ACCESS? собственно ситуация такова: есть локальная база на аксесе...

Как через ADO вызвать Create Table?
Народ помогите пожалуйста. Как через ADO вызвать Create table для ACCESS. Необходимо создавать таблицы в ACCESS с помощью инструментов...

Как в строке CREATE TABLE указать FIELD_LEN и FIELD_DEC для поля NUMERIC?
Так что, в строке CREATE TABLE так и нельзя указать FIELD_LEN и FIELD_DEC для поля NUMERIC? :-((

Как правильно сделать построчное чтение txt файла, чтобы потом эти данные выводились в теге <table></table>?
У меня есть файл file.txt: Саша 12 руб. Рома 76 руб. Петя 120 руб. Маша 234 руб. Я пытаюсь создать функцию, которая...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Новые блоги и статьи
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/ TL DR Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru