224 lines
6.1 KiB
C#
224 lines
6.1 KiB
C#
using Global;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using static DtWebApiDT.DataAccess;
|
|
//using static SqlManage.ExecSql;
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
namespace DTTest
|
|
{
|
|
/// <summary>
|
|
/// 对于数据库的操作
|
|
/// </summary>
|
|
public partial class SqlOperation
|
|
{
|
|
/// <summary>
|
|
/// 程序初始化时候注入数据,20201013,LLX
|
|
/// 2021.4.6
|
|
/// 2021.4.7
|
|
/// </summary>
|
|
public class InitInjection
|
|
{
|
|
private static string Sql_SelectDatabase_Exist()
|
|
{
|
|
return @" SELECT* FROM sysdatabases WHERE name='ModelData'";
|
|
|
|
}
|
|
private static string Sql_CreateDatabase_Entity()
|
|
{
|
|
var thisDirectory = System.IO.Directory.GetCurrentDirectory();
|
|
var dbName = "ModelData";
|
|
return
|
|
@" CREATE DATABASE [" + dbName + "] CONTAINMENT = NONE" +
|
|
@" ON PRIMARY( NAME = N'" + dbName + "', FILENAME = N'" + thisDirectory + "\\" + dbName + ".mdf' , SIZE = 8192KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )" +
|
|
@" LOG ON ( NAME = N'" + dbName + "_log', FILENAME = N'" + thisDirectory + "\\" + dbName + "_log.ldf' , SIZE = 8192KB , MAXSIZE = UNLIMITED, FILEGROWTH = 10%)";
|
|
|
|
}
|
|
private static string Sql_CreateDatabase_Table()
|
|
{
|
|
return @"
|
|
|
|
CREATE TABLE [OperationTree](
|
|
[ID] [int] IDENTITY(1,1) NOT NULL,
|
|
[CraftCode] [nvarchar](50) NOT NULL,
|
|
[CraftTypeCode] [nvarchar](50) NULL,
|
|
[Varieties] [nvarchar](50) NULL,
|
|
[CraftName] [nvarchar](500) NULL,
|
|
[CraftDeviceTypeCode] [int] NULL,
|
|
[ProjectCode] [nvarchar](50) NOT NULL,
|
|
[OperationTime] [datetime] NULL,
|
|
[SequenceNo] [int] NULL,
|
|
[StartTime] [int] NULL,
|
|
[KeepTime] [int] NULL,
|
|
[ModelCode] [nvarchar](50) NULL,
|
|
[CraftPlayData] [nvarchar](max) NULL,
|
|
[CraftPlayData_Joint] [nvarchar](max) NULL,
|
|
[CraftPlayData_Raw] [nvarchar](max) NULL,
|
|
[Rate] [int] NULL,
|
|
[Explain] [nvarchar](50) NULL,
|
|
CONSTRAINT [pk_CraftTree] PRIMARY KEY CLUSTERED ( [CraftCode] ASC, [ProjectCode] ASC )
|
|
)
|
|
|
|
CREATE TABLE [DeviceSignalSimTree](
|
|
[ID] [int] IDENTITY(1,1) NOT NULL,
|
|
[Code] [nvarchar](50) NOT NULL,
|
|
[Pid] [nvarchar](50) NULL,
|
|
[Varieties] [nvarchar](50) NULL,
|
|
[Name] [nvarchar](50) NULL,
|
|
[TagID] [int] NULL,
|
|
[TagValue] [nvarchar](50) NULL,
|
|
[StartTime] [int] NULL,
|
|
[KeepTime] [int] NULL,
|
|
[SequenceNo] [int] NULL,
|
|
[OperationTime] [datetime] NULL,
|
|
[ProjectCode] [nvarchar](50) NOT NULL
|
|
)
|
|
|
|
CREATE TABLE [ModelProcess](
|
|
[ID] [int] IDENTITY(1,1) NOT NULL,
|
|
[ProcessCode] [nvarchar](50) NOT NULL,
|
|
[CraftCode] [nvarchar](50) NULL,
|
|
[SequenceNo] [int] NULL,
|
|
[ProcessName] [nvarchar](50) NULL,
|
|
[UseTime] [int] NULL,
|
|
[X] [real] NULL,
|
|
[Y] [real] NULL,
|
|
[Z] [real] NULL,
|
|
[RX] [real] NULL,
|
|
[RY] [real] NULL,
|
|
[RZ] [real] NULL,
|
|
[X_Base] [real] NULL,
|
|
[Y_Base] [real] NULL,
|
|
[Z_Base] [real] NULL,
|
|
[RX_Base] [real] NULL,
|
|
[RY_Base] [real] NULL,
|
|
[RZ_Base] [real] NULL,
|
|
[QX] [real] NULL,
|
|
[QY] [real] NULL,
|
|
[QZ] [real] NULL,
|
|
[QW] [real] NULL,
|
|
[QX_Base] [real] NULL,
|
|
[QY_Base] [real] NULL,
|
|
[QZ_Base] [real] NULL,
|
|
[QW_Base] [real] NULL,
|
|
[X_Tool] [real] NULL,
|
|
[Y_Tool] [real] NULL,
|
|
[Z_Tool] [real] NULL,
|
|
[RX_Tool] [real] NULL,
|
|
[RY_Tool] [real] NULL,
|
|
[RZ_Tool] [real] NULL,
|
|
[QX_Tool] [real] NULL,
|
|
[QY_Tool] [real] NULL,
|
|
[QZ_Tool] [real] NULL,
|
|
[QW_Tool] [real] NULL,
|
|
[OperationTime] [datetime] NULL,
|
|
[ProjectCode] [nvarchar](50) NOT NULL,
|
|
CONSTRAINT [pk_ModelProcess] PRIMARY KEY CLUSTERED ( [ProcessCode] ASC, [ProjectCode] ASC )
|
|
)
|
|
|
|
CREATE TABLE [ProjectList](
|
|
[ID] [int] IDENTITY(1,1) NOT NULL,
|
|
[ProjectCode] [nvarchar](50) NOT NULL,
|
|
[ProjectName] [nvarchar](50) NULL,
|
|
[RestoredProjectName] [nvarchar](50) NULL,
|
|
[OperationTime] [datetime] NULL,
|
|
[CurrentProject] [bit] NULL,
|
|
CONSTRAINT [PK_ProjectList] PRIMARY KEY CLUSTERED ( [ProjectCode] ASC )
|
|
)
|
|
|
|
CREATE TABLE [ProcesslLabelList](
|
|
[ID] [int] IDENTITY(1,1) NOT NULL,
|
|
[ProcessCode] [nvarchar](50) NULL,
|
|
[TagID] [int] NULL,
|
|
[TagValue] [nvarchar](50) NULL,
|
|
[OperationTime] [datetime] NULL,
|
|
[ProjectCode] [nvarchar](50) NULL
|
|
)
|
|
|
|
|
|
|
|
CREATE TABLE [TagTriggerHandler](
|
|
[ID] [int] IDENTITY(1,1) NOT NULL,
|
|
[HandlerType] [int] NULL,
|
|
[TagID] [int] NULL,
|
|
[TagValue] [nvarchar](50) NULL,
|
|
[HandlerCode] [nvarchar](50) NULL,
|
|
[HandlerValue] [nvarchar](50) NULL,
|
|
[OperationTime] [datetime] NULL,
|
|
[ProjectCode] [nvarchar](50) NOT NULL
|
|
)
|
|
|
|
CREATE TABLE [Z_Save_Position](
|
|
[ID] [int] IDENTITY(1,1) NOT NULL,
|
|
[OpName] [nvarchar](50) NULL,
|
|
[Value] [nvarchar](50) NULL,
|
|
[OperationTime] [datetime] NULL,
|
|
[ProjectCode] [nvarchar](50) NOT NULL
|
|
)
|
|
|
|
CREATE TABLE [Z_Save_Tag](
|
|
[ID] [int] IDENTITY(1,1) NOT NULL,
|
|
[OpName] [nvarchar](50) NULL,
|
|
[TagID] [int] NULL,
|
|
[Value] [nvarchar](50) NULL,
|
|
[KeepTime] [int] NULL,
|
|
[OperationTime] [datetime] NULL,
|
|
[ProjectCode] [nvarchar](50) NOT NULL
|
|
)";
|
|
|
|
}
|
|
|
|
/// <summary>
|
|
/// 数据库是存在
|
|
/// 2021.4.7
|
|
/// </summary>
|
|
/// <param name="connStr"></param>
|
|
/// <returns></returns>
|
|
public static bool SelectDatabase_Exist(string connStr)
|
|
{
|
|
var exist = false;
|
|
ExecuteDataset(Sql_SelectDatabase_Exist(), connStr.Replace("ModelData", "master"), out DataSet ds, out string errorMessage);
|
|
var dt = ds.Tables[0];
|
|
var count = dt.Rows.Count;
|
|
if (count > 0)
|
|
{
|
|
exist = true;
|
|
}
|
|
return exist;
|
|
|
|
}
|
|
|
|
public static bool CreateDatabase_Entity(string connStr)
|
|
{
|
|
return ExecuteDataset(Sql_CreateDatabase_Entity(), connStr.Replace("ModelData", "master"), out DataSet ds, out string errorMessage);
|
|
}
|
|
|
|
public static void CreateDatabase_Table(string connStr)
|
|
{
|
|
ExecuteDataset(Sql_CreateDatabase_Table(), connStr, out DataSet ds, out string errorMessage);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 得到数据库脚本
|
|
/// 2021.4.9
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public static string GetSqlScript()
|
|
{
|
|
var script = new System.Text.StringBuilder();
|
|
script.AppendLine(Sql_CreateDatabase_Entity()).AppendLine();
|
|
script.AppendLine(Sql_CreateDatabase_Table()).AppendLine();
|
|
return script.ToString();
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
}
|