Sql Server 生成 Word 文档 表结构

news2025/1/10 20:22:21

打开数据库编辑器,输入以下代码并执行(F5)

SELECT
   表名       = case when a.colorder=1 then d.name else '' end,
  表说明     = case when a.colorder=1 then isnull(f.value,'') else '' end,
    序号   = a.colorder,
    列名    = a.name,
    --数据类型       = b.name,
    数据类型   = b.name+'('+CONVERT(VARCHAR,COLUMNPROPERTY(a.id,a.name,'PRECISION'))+')',
    --长度       = COLUMNPROPERTY(a.id,a.name,'PRECISION'),
    --小数位   = isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0),
    --标识       = case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '是'else '' end,
    --主键       = case when exists(SELECT 1 FROM sysobjects where xtype='PK' and parent_obj=a.id and name in (
    --                 SELECT name FROM sysindexes WHERE indid in( SELECT indid FROM sysindexkeys WHERE id = a.id AND colid=a.colid))) then '是' else '' end,
    --占用字节数 = a.length,
    允许空     = case when a.isnullable=1 then '是'else '否' end,
    --默认值     = isnull(e.text,''),
    说明   = isnull(g.[value],'')
FROM
    syscolumns a
left join
    systypes b
on
    a.xusertype=b.xusertype
inner join
    sysobjects d
on
    a.id=d.id  and d.xtype='U' and  d.name<>'dtproperties'
left join
    syscomments e
on
    a.cdefault=e.id
left join
sys.extended_properties   g
on
    a.id=G.major_id and a.colid=g.minor_id
left join
 
sys.extended_properties f
on
    d.id=f.major_id and f.minor_id=0
-- where d.name='B_Table'    --如果只查询指定表,加上此条件
order by
    a.id,a.colorder
全选查询结果,鼠标右键“连同标题一起复制”

新建 Excel 文件,粘贴刚才复制的内容,Excel表格中会出现粘贴的内容,再选中Excel表格的内容,复制

新建 Word 文件,依次列出表名称标题,依次选中每个表名称标题,并设置样式(右键也可弹出样式菜单),导航菜单栏 —》引用  —》目录 —》自动目录 —》即可生成目录菜单。

根据粘贴的表结构内容,粘贴到与表名称相对应的位置。导航菜单栏 —》引用  —》目录 —》更新目录。
*
*
生成Word文档 npoi
SqlSugar查询数据库信息

using System;
using System.Collections.Generic;
using AutoMapper;
using POS.Entity;
 
namespace POS.Repository
{
    public interface IBulletinRepository : IRepository<BulletinDo>
    {
        List<SysteTable> GetAllTable();
 
        List<TableField> GetTableField(string tableName);
    }
 
    public class BulletinRepository : BaseRepository<BulletinDo, POSDbContext>, IBulletinRepository
    {
        public BulletinRepository(POSDbContext context) : base(context)
        {
        }
 
        public List<SysteTable> GetAllTable()
        {
            string sql = "select name from SysObjects where XType='U'";
            return Context.Ado.SqlQuery<SysteTable>(sql);
        }
 
        public List<TableField> GetTableField(string tableName)
        {
            string sql = @"SELECT
                           --表名       = case when a.colorder=1 then d.name else '' end,
                           --表说明     = case when a.colorder=1 then isnull(f.value,'') else '' end,
                           序号   = a.colorder,
                           列名    = a.name,
                           --标识       = case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '是'else '' end,
                           --主键       = case when exists(SELECT 1 FROM sysobjects where xtype='PK' and parent_obj=a.id and name in (
                           --                 SELECT name FROM sysindexes WHERE indid in( SELECT indid FROM sysindexkeys WHERE id = a.id AND colid=a.colid))) then '是' else '' end,
                           数据类型   = b.name+'('+CONVERT(VARCHAR,COLUMNPROPERTY(a.id,a.name,'PRECISION'))+')',
                           --占用字节数 = a.length,
                           --长度       = COLUMNPROPERTY(a.id,a.name,'PRECISION'),
                           --小数位数   = isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0),
                           允许空     = case when a.isnullable=1 then '是'else '否' end,
                           --默认值     = isnull(e.text,''),
                           说明   = isnull(g.[value],'')
                           FROM syscolumns a
                           left join systypes b on a.xusertype=b.xusertype
                           inner join sysobjects d on a.id=d.id  and d.xtype='U' and  d.name<>'dtproperties'
                           left join syscomments e on a.cdefault=e.id
                           left join sys.extended_properties g on a.id=G.major_id and a.colid=g.minor_id
                           left join sys.extended_properties f on d.id=f.major_id and f.minor_id=0
                           where d.name= '" + tableName +
                           @"'order by a.id,a.colorder";
 
            return Context.Ado.SqlQuery<TableField>(sql);
        }
    }
 
    public class SysteTable
    {
        public string name { get; set; }
    }
 
    public class TableField
    {
        public string 序号 { get; set; }
 
        public string 列名 { get; set; }
 
        public string 数据类型 { get; set; }
 
        public string 允许空 { get; set; }
 
        public string 说明 { get; set; }
    }
}
*
*
Controller(直接查看Index页面即可下载Word文件)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using POS.Web.Filter;
using NPOI.XWPF.UserModel;
using System.Text;
using System.IO;
using NPOI.OpenXmlFormats.Wordprocessing;
using POS.Repository;
 
namespace POS.Web.Controllers
{
    [UserInfo]
    public class BulletinController : ControllerBase
    {
        private readonly IBulletinRepository _bulletinRepo;
 
        public BulletinController(IBulletinRepository bulletinRepo)
        {
            _bulletinRepo = bulletinRepo;
        }
 
 
        public ActionResult Index()
        {
            //return View();
            return File(CreateWordNew(), "application/octet-stream", $"文件名_{DateTime.Now.ToString("yyyyMMddHHmmssfff")}.docx");
        }
 
        private void CreateWord()
        {
            //创建document对象
            var doc = new XWPFDocument();
 
            //创建段落对象1
            var p1 = doc.CreateParagraph();
            p1.Alignment = ParagraphAlignment.CENTER; //字体居中
                                                      //创建run对象
                                                      //本节提到的所有样式都是基于XWPFRun的,
                                                      //你可以把XWPFRun理解成一小段文字的描述对象,
                                                      //这也是Word文档的特征,即文本描述性文档。
                                                      //来自Tony Qu http://tonyqus.sinaapp.com/archives/609
            var runTitle = p1.CreateRun();
            runTitle.IsBold = true;
            runTitle.SetText("军检验收单");
            runTitle.FontSize = 16;
            runTitle.SetFontFamily("宋体", FontCharRange.None); //设置雅黑字体
 
            //创建段落对象2
            var p2 = doc.CreateParagraph();
            var run1 = p2.CreateRun();
            run1.SetText(" 军检项目号:");
            run1.FontSize = 12;
            run1.SetFontFamily("华文楷体", FontCharRange.None); //设置雅黑字体
 
            #region 头部(6 rows)
 
            //基本row12,列5;头部6行,4列
            var tableTop = doc.CreateTable(6, 5);
            tableTop.Width = 1000 * 5;
            tableTop.SetColumnWidth(0, 1300); /* 设置列宽 */
            tableTop.SetColumnWidth(1, 500); /* 设置列宽 */
            tableTop.SetColumnWidth(2, 1000); /* 设置列宽 */
            tableTop.SetColumnWidth(3, 500); /* 设置列宽 */
            tableTop.SetColumnWidth(4, 1700); /* 设置列宽 */
 
            tableTop.GetRow(0).MergeCells(1, 4); /* 合并行 */
            tableTop.GetRow(0).GetCell(0).SetParagraph(SetCellText(doc, tableTop, "产品名称"));
            tableTop.GetRow(0).GetCell(1).SetParagraph(SetCellText(doc, tableTop, "              "));
 
            tableTop.GetRow(1).MergeCells(1, 4);
            tableTop.GetRow(1).GetCell(0).SetParagraph(SetCellText(doc, tableTop, "项目名称"));
            tableTop.GetRow(1).GetCell(1).SetParagraph(SetCellText(doc, tableTop, "              "));
 
            tableTop.GetRow(2).MergeCells(1, 4);
            tableTop.GetRow(2)
                .GetCell(0)
                .SetParagraph(SetCellText(doc, tableTop, "施工依据", ParagraphAlignment.CENTER, 45));
            tableTop.GetRow(2)
                .GetCell(1)
                .SetParagraph(SetCellText(doc, tableTop, "              ", ParagraphAlignment.CENTER, 45));
 
            tableTop.GetRow(3).GetCell(0).SetParagraph(SetCellText(doc, tableTop, "检验方式"));
            tableTop.GetRow(3).GetCell(1).SetParagraph(SetCellText(doc, tableTop, "独立检验"));
            tableTop.GetRow(3).GetCell(2).SetParagraph(SetCellText(doc, tableTop, "              "));
            tableTop.GetRow(3).GetCell(3).SetParagraph(SetCellText(doc, tableTop, "联合检验"));
            tableTop.GetRow(3).GetCell(4).SetParagraph(SetCellText(doc, tableTop, "              "));
 
            tableTop.GetRow(4).MergeCells(3, 4);
            tableTop.GetRow(4).GetCell(0).SetParagraph(SetCellText(doc, tableTop, "设备名称及编号"));
            tableTop.GetRow(4).GetCell(1).SetParagraph(SetCellText(doc, tableTop, "              "));
            tableTop.GetRow(4).GetCell(2).SetParagraph(SetCellText(doc, tableTop, "设备制造厂"));
            tableTop.GetRow(4).GetCell(3).SetParagraph(SetCellText(doc, tableTop, "              "));
            //tableTop.GetRow(4).GetCell(3).SetBorderBottom(XWPFtableTop.XWPFBorderType.NONE,0,0,"");
 
            tableTop.GetRow(5).MergeCells(0, 4);
            var para = new CT_P();
            var pCell = new XWPFParagraph(para, tableTop.Body);
            pCell.Alignment = ParagraphAlignment.LEFT; //字体居中
 
            var r1c1 = pCell.CreateRun();
            r1c1.SetText("检验要素共9项");
            r1c1.FontSize = 12;
            r1c1.SetFontFamily("华文楷体", FontCharRange.None); //设置雅黑字体
            tableTop.GetRow(5).GetCell(0).SetParagraph(pCell);
 
            #endregion
 
            #region 检验要素列表部分(数据库读取循环显示)
            var tableContent = doc.CreateTable(45, 5);
            tableContent.Width = 1000 * 5;
            tableContent.SetColumnWidth(0, 300); /* 设置列宽 */
            tableContent.SetColumnWidth(1, 1000); /* 设置列宽 */
            tableContent.SetColumnWidth(2, 1000); /* 设置列宽 */
            tableContent.SetColumnWidth(3, 1000); /* 设置列宽 */
            tableContent.SetColumnWidth(4, 1700); /* 设置列宽 */
 
            tableContent.GetRow(0).GetCell(0).SetParagraph(SetCellText(doc, tableContent, "序号"));
            tableContent.GetRow(0).GetCell(1).SetParagraph(SetCellText(doc, tableContent, "检验要素"));
            tableContent.GetRow(0).GetCell(2).SetParagraph(SetCellText(doc, tableContent, "指标要求"));
            tableContent.GetRow(0).GetCell(3).SetParagraph(SetCellText(doc, tableContent, "实测值"));
            tableContent.GetRow(0).GetCell(4).SetParagraph(SetCellText(doc, tableContent, "测量工具编号及有效期"));
 
            for (var i = 1; i < 45; i++)
            {
                tableContent.GetRow(i)
                    .GetCell(0)
                    .SetParagraph(SetCellText(doc, tableContent, i.ToString(), ParagraphAlignment.CENTER, 50));
                tableContent.GetRow(i)
                    .GetCell(1)
                    .SetParagraph(SetCellText(doc, tableContent, "检验要素", ParagraphAlignment.CENTER, 50));
                tableContent.GetRow(i)
                    .GetCell(2)
                    .SetParagraph(SetCellText(doc, tableContent, "指标要求", ParagraphAlignment.CENTER, 50));
                tableContent.GetRow(i)
                    .GetCell(3)
                    .SetParagraph(SetCellText(doc, tableContent, "实测值", ParagraphAlignment.CENTER, 50));
                tableContent.GetRow(i)
                    .GetCell(4)
                    .SetParagraph(SetCellText(doc, tableContent, "测量工具编号及有效期", ParagraphAlignment.CENTER, 50));
            }
 
            #endregion
 
            #region 底部内容
 
            var tableBottom = doc.CreateTable(5, 4);
            tableBottom.Width = 1000 * 5;
 
            tableBottom.SetColumnWidth(0, 1000); /* 设置列宽 */
            tableBottom.SetColumnWidth(1, 1500); /* 设置列宽 */
            tableBottom.SetColumnWidth(2, 1000); /* 设置列宽 */
            tableBottom.SetColumnWidth(3, 1500); /* 设置列宽 */
 
            tableBottom.GetRow(0).MergeCells(0, 3); /* 合并行 */
            tableBottom.GetRow(0)
                .GetCell(0)
                .SetParagraph(SetCellText(doc, tableBottom, "附件:", ParagraphAlignment.LEFT, 80));
            tableBottom.GetRow(0).Height = 30;
 
            tableBottom.GetRow(1).MergeCells(0, 3); /* 合并行 */
            tableBottom.GetRow(1)
                .GetCell(0)
                .SetParagraph(SetCellText(doc, tableBottom, "检验结论:", ParagraphAlignment.LEFT, 80));
            tableBottom.GetRow(1).Height = 30;
 
 
            tableBottom.GetRow(2).GetCell(0).SetParagraph(SetCellText(doc, tableBottom, "施工部门"));
            tableBottom.GetRow(2).GetCell(1).SetParagraph(SetCellText(doc, tableBottom, "        "));
            tableBottom.GetRow(2).GetCell(2).SetParagraph(SetCellText(doc, tableBottom, "报验日期"));
            tableBottom.GetRow(2).GetCell(3).SetParagraph(SetCellText(doc, tableBottom, "        "));
 
            tableBottom.GetRow(3).GetCell(0).SetParagraph(SetCellText(doc, tableBottom, "军检次数"));
            tableBottom.GetRow(3).GetCell(1).SetParagraph(SetCellText(doc, tableBottom, "        "));
            tableBottom.GetRow(3).GetCell(2).SetParagraph(SetCellText(doc, tableBottom, "军检日期"));
            tableBottom.GetRow(3).GetCell(3).SetParagraph(SetCellText(doc, tableBottom, "        "));
 
            tableBottom.GetRow(4).GetCell(0).SetParagraph(SetCellText(doc, tableBottom, "检验员"));
            tableBottom.GetRow(4).GetCell(1).SetParagraph(SetCellText(doc, tableBottom, "        "));
            tableBottom.GetRow(4).GetCell(2).SetParagraph(SetCellText(doc, tableBottom, "军代表"));
            tableBottom.GetRow(4).GetCell(3).SetParagraph(SetCellText(doc, tableBottom, "        "));
 
            #endregion
 
            #region 保存导出WebForm
 
            var ms = new MemoryStream();
            doc.Write(ms);
            Response.AddHeader("Content-Disposition",
                string.Format("attachment; filename={0}.doc",
                    HttpUtility.UrlEncode("文件名" + "_" + DateTime.Now.ToString("yyyyMMddHHmmssfff"),
                        Encoding.UTF8)));
            Response.BinaryWrite(ms.ToArray());
            Response.End();
 
            ms.Close();
            ms.Dispose();
            #endregion
        }
 
        private byte[] CreateWordNew()
        {
            var tableList = _bulletinRepo.GetAllTable();
 
            //创建document对象
            var doc = new XWPFDocument();
 
            //创建段落对象1
            var p1 = doc.CreateParagraph();
            p1.Alignment = ParagraphAlignment.CENTER;
            var runTitle = p1.CreateRun();
            runTitle.IsBold = true;
            runTitle.SetText("数据库名:dbHospital");
            runTitle.FontSize = 12;
            runTitle.SetFontFamily("宋体", FontCharRange.None);
 
            foreach (var item in tableList)
            {
                //创建段落对象2
                var pFor = doc.CreateParagraph();
                var runFor = pFor.CreateRun();
                runFor.SetText($"表名:{item.name}");
                runFor.FontSize = 10;
                runFor.IsBold = true;
                runFor.SetFontFamily("宋体", FontCharRange.None);
                pFor.Alignment = ParagraphAlignment.CENTER;
 
                #region 检验要素列表部分(数据库读取循环显示)
 
                var result = _bulletinRepo.GetTableField(item.name);
 
                int total = result.Count() + 1;
                var tableContent = doc.CreateTable(total, 5);
                tableContent.Width = 1000 * 5;
                tableContent.SetColumnWidth(0, 300); /* 设置列宽 */
                tableContent.SetColumnWidth(1, 1000); /* 设置列宽 */
                tableContent.SetColumnWidth(2, 1000); /* 设置列宽 */
                tableContent.SetColumnWidth(3, 1000); /* 设置列宽 */
                tableContent.SetColumnWidth(4, 1700); /* 设置列宽 */
 
                tableContent.GetRow(0).GetCell(0).SetParagraph(SetCellText(doc, tableContent, "序号"));
                tableContent.GetRow(0).GetCell(1).SetParagraph(SetCellText(doc, tableContent, "列名"));
                tableContent.GetRow(0).GetCell(2).SetParagraph(SetCellText(doc, tableContent, "数据类型"));
                tableContent.GetRow(0).GetCell(3).SetParagraph(SetCellText(doc, tableContent, "允许空"));
                tableContent.GetRow(0).GetCell(4).SetParagraph(SetCellText(doc, tableContent, "说明"));
 
                int i = 1;
                foreach (var fieldItem in result)
                {
                    tableContent.GetRow(i)
                        .GetCell(0)
                        .SetParagraph(SetCellText(doc, tableContent, fieldItem.序号, ParagraphAlignment.LEFT, 24));
                    tableContent.GetRow(i)
                        .GetCell(1)
                        .SetParagraph(SetCellText(doc, tableContent, fieldItem.列名, ParagraphAlignment.LEFT, 24));
                    tableContent.GetRow(i)
                        .GetCell(2)
                        .SetParagraph(SetCellText(doc, tableContent, fieldItem.数据类型, ParagraphAlignment.LEFT, 24));
                    tableContent.GetRow(i)
                        .GetCell(3)
                        .SetParagraph(SetCellText(doc, tableContent, fieldItem.允许空, ParagraphAlignment.LEFT, 24));
                    tableContent.GetRow(i)
                        .GetCell(4)
                        .SetParagraph(SetCellText(doc, tableContent, fieldItem.说明, ParagraphAlignment.LEFT, 24));
                    i++;
                }
                i = 0;
 
                #endregion
            }
 
            #region 保存导出WebForm
 
            var ms = new MemoryStream();
            doc.Write(ms);
            ms.Flush();
            ms.Close();
            ms.Dispose();
            #endregion
            return ms.ToArray();
        }
 
        /// <summary>
        /// 设置字体格式
        /// </summary>
        /// <param name="doc"></param>
        /// <param name="table"></param>
        /// <param name="setText"></param>
        /// <returns></returns>
        public XWPFParagraph SetCellText(XWPFDocument doc, XWPFTable table, string setText)
        {
            //table中的文字格式设置
            var para = new CT_P();
            var pCell = new XWPFParagraph(para, table.Body);
            pCell.Alignment = ParagraphAlignment.CENTER; //字体居中
            pCell.VerticalAlignment = TextAlignment.CENTER; //字体居中
            pCell.FillBackgroundColor = "#D3D3D3";
 
            var r1c1 = pCell.CreateRun();
            r1c1.SetText(setText);
            r1c1.FontSize = 9;
            r1c1.SetFontFamily("宋体", FontCharRange.None); //设置雅黑字体
            r1c1.SetTextPosition(24); //设置高度
 
 
            return pCell;
        }
 
        /// <summary>
        ///     设置单元格格式
        /// </summary>
        /// <param name="doc">doc对象</param>
        /// <param name="table">表格对象</param>
        /// <param name="setText">要填充的文字</param>
        /// <param name="align">文字对齐方式</param>
        /// <param name="textPos">rows行的高度</param>
        /// <returns></returns>
        public XWPFParagraph SetCellText(XWPFDocument doc, XWPFTable table, string setText, ParagraphAlignment align,
            int textPos)
        {
            var para = new CT_P();
            var pCell = new XWPFParagraph(para, table.Body);
            //pCell.Alignment = ParagraphAlignment.LEFT;//字体
            pCell.Alignment = align;
            pCell.VerticalAlignment = TextAlignment.CENTER; //字体居中
 
            var r1c1 = pCell.CreateRun();
            r1c1.SetText(setText);
            r1c1.FontSize = 9;
            r1c1.SetFontFamily("宋体", FontCharRange.None); //设置雅黑字体
            r1c1.SetTextPosition(textPos); //设置高度
 
            return pCell;
        }
    }
}
 
查询【数据库】所有【表】名称

select o.name as TableName,isnull(p.value, '') AS TableMemo 
from sysobjects o 
left join sys.extended_properties p On o.id = p.major_id and p.minor_id = 0 and p.name = 'MS_Description' 
where xtype = 'U' and o.name not in ('sysdiagrams', 'sp_upgraddiagrams') 
order by o.name

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/94976.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

QT6+CloudCompare显示3D点云

CloudCompare是一个三维点云&#xff08;网格&#xff09;编辑和处理软件。最初&#xff0c;它被设计用来对稠密的三维点云进行直接比较。它依赖于一种特定的八叉树结构&#xff0c;在进行点云对比这类任务时具有出色的性能。此外&#xff0c;由于大多数点云都是由地面激光扫描…

文本转语音免费 微软Azure官网,在线就可以转语音。

使用跨 140 种语言和变体的 400 种神经网络语音吸引全球受众。使用极具表现力和类似人类的声音&#xff0c;使文本阅读器和已启用语音的助理等方案栩栩如生。神经网络文本转语音支持多种朗读风格&#xff0c;包括新闻广播、客户服务、呼喊、耳语以及高兴、悲伤等情感。 地址 文…

【Java寒假打卡】Java基础-数组学习笔记

【Java寒假打卡】Java基础-数组学习笔记一、定义二、定义格式三、数组动态初始化四、数组元素访问五、内存分配六、多个数组的不同内存图七、数组的静态初始化八、数组操作的两个小问题九、求数组的最大值十、查找数组的特定值一、定义 数组是一个容器&#xff0c;存储一种数组…

6 CPP之C风格字符串

CPP之C风格字符串 c中的string类&#xff0c;封装了C风格的字符串。 使用方便&#xff0c;能自动扩展&#xff0c;不用担心内存问题 在某些场景中&#xff0c;C风格字符串更方便&#xff0c;更高效 C标准库、Linux系统和开源库&#xff0c;大部分开源库一定有C语言版本&…

Vue前端浏览器链接/接口参数实现加密

场景 由于项目创建之前后端设计不合理&#xff0c;导致详情页链接参数id为顺序序数(例&#xff1a;1,2,3…等等)&#xff0c;安全系数非常低&#xff08;虽然我们前端做了菜单权限、按钮权限、Api权限等等&#xff09;&#xff0c;现在要前端解决下浏览器链接/接口参数实现加密…

《Linux运维总结:基于xtrabackup8工具全量物理备份Mysql8数据自动化工具(方案一)》

一、背景信息 说明&#xff1a;由于业务系统的特殊性&#xff0c;对数据的备份要求非常高&#xff0c;且数据量非常大&#xff0c;所以这里采用xtrabackup工具来对Mysql数据库进行全量物理备份。由于xtrabackup工具操作复杂&#xff0c;这里为了简便&#xff0c;基于xtrabackup…

张驰咨询:快速提高流程效率的5个关键精益生产工具

精益&#xff0c;又称“精益制造”或“精益生产”&#xff0c;注重通过消除浪费、消除缺陷&#xff0c;实现客户价值最大化。精益工具是关于理解过程&#xff0c;发现浪费&#xff0c;防止错误和记录你所做的事情。 让我们来看看流程改进中使用的五种精益工具&#xff0c;它们…

建立企业数据共享机制,打破数据壁垒

很多人可能也比较疑惑&#xff0c;为什么数据这么重要&#xff0c;能够有着数据治理、数据标准、数据管理以及我们接下来要讲的数据共享&#xff0c;各种针对数据的机制体系。一方面是因为数据在数字经济和数字化转型进程中发挥了巨大作用&#xff0c;甚至可以称得上是两者的核…

RCNN网络源码解读(Ⅰ) --- 获取数据并预处理数据

目录 1.RCNN是什么东西 2.处理数据集 2.1 code&#xff1a;下载VOC数据集&#xff08;pascal_voc.py&#xff09; 2.2 code&#xff1a; 数据集预处理&#xff08;pascal_voc_car.py&#xff09; 3.code区域候选建议&#xff08;selectivesearch.py&#xff09; 1.RCNN是什…

Web(十)JavaScript知识训练-JS函数

1、下列选项中&#xff0c;&#xff08; B&#xff09;可用于检查某个值是否为无穷大的数。 A、 isNaN&#xff08;&#xff09; B、 isFinite&#xff08;&#xff09; C、 parseInt&#xff08;&#xff09; D、 parseFloat&#xff08;&#xff09; 2、函数parseInt(15.36)…

燕东微在科创板上市:市值263亿元,北京电控、亦庄国投等为股东

12月16日&#xff0c;北京燕东微电子股份有限公司&#xff08;下称“燕东微”&#xff0c;SH:688172&#xff09;在上海证券交易所科创板上市。本次在上市&#xff0c;燕东微的发行价为21.98元/股&#xff0c;募资总额约为39.53亿元&#xff0c;募资净额约为37.57亿元&#xff…

【Java寒假打卡】Java基础-方法

【Java寒假打卡】Java基础-方法一、定义二、方法的定义和调用三、方法调用过程四、带参数的方法和调用五、debug查看方法参数传递六、带返回值的方法的调用七、方法重载八、方法传递数据九、返回一个数组的最大值和最小值一、定义 方法就是一段具有独立功能的代码块&#xff0…

Java中的Set系列集合

Set系列集合Set系列集合Set系列集合概述HashSet元素的底层原理&#xff1a;哈希表HashSet元素去重复的底层原理实现类&#xff1a;LinkedHashSet实现类&#xff1a;TreeSetCollection体系的特点、使用场景终结补充知识&#xff1a;可变参数集合工具类CollectionsCollection体系…

Unity PolyNav2D(2D寻路) 插件

下载地址 https://download.csdn.net/download/qq_27461747/87300286 组件 PolyNav2D 寻路地图&#xff0c;一般来说 有且只有一个&#xff0c; 寻路的主要接口就在这个组件里PolyNavObstacle 障碍物PolyNavAgent 导航代理, 带有移动功能。这个可有可无&#xff0c;可以自己…

重点| 系统集成项目管理工程师考前50个知识点(6)

本文章总结了系统集成项目管理工程师考试背记50个知识点&#xff01;&#xff01;&#xff01; 帮助大家更好的复习&#xff0c;希望能对大家有所帮助 比较长&#xff0c;放了部分&#xff0c;需要可私信&#xff01;&#xff01; 40、冲突的下列特点&#xff1a; &#xff…

css知识复习点

四种css使用方式&#xff1a;内嵌式、外链式、行内式、导入式 复合选择器 后代选择器 选择器之间需要用空格隔开&#xff0c;后代不一定是儿子 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>复合…

渗透测试-crlf注入原理

目录 概念 HTTP报文结构与漏洞原理 漏洞检测 Bottle之CRLF漏洞 nginx配置错误之CRLF漏洞 漏洞危害 会话固定 修复建议 漏洞检测POC 概念 这个漏洞一般很少出现。 CRLF是CR和LF两个字符的拼接&#xff0c;它们分别代表”回车换行”&#xff08;\r\n&#xff09;。十六…

[附源码]Nodejs计算机毕业设计基于的学生事务管理系统Express(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。欢迎交流 项目运行 环境配置&#xff1a; Node.js Vscode Mysql5.7 HBuilderXNavicat11VueExpress。 项目技术&#xff1a; Express框架 Node.js Vue 等等组成&#xff0c;B/S模式 Vscode管理前后端分…

Java+mysql基于SSM的网上出差审批与费用报销系统 开题 毕业设计

本课题是一个基于SSM的管理系统,本网上出差审批与费用报销系统是在Windows7系统的环境下,利用Eclipse和Mysql工具开发的。在网上出差审批与费用报销系统中分为管理员和普通用户2个模块。其中网上出差审批与费用报销系统中的管理人员在登陆之后可以管理本系统内的部门信息管理,员…

性能测试场景:如何进行场景设计?

我们在前面屡次强调了场景的重要性,今天终于到了要把实际场景拿出来解析的时候了。 在本篇文章中,为了保证数据的连续性,我用之前的项目资料来作明确地说明。同时为了模糊关键业务信息,以及让场景的描述更通用性,我会把所有的业务名隐去。 根据之前我们所说的,基准性能…