GithubHelp home page GithubHelp logo

freesql.wiki.vuepress's Introduction

FreeSql Docs

install

npm install -g pnpm@next-7
pnpm install

run

pnpm docs:dev

build

pnpm docs:build

Docker Run

docker pull igeekfan/freesql-doc:latest
docker run --name freesql-doc -d -p 8081:80 igeekfan/freesql-doc:latest

这样我们就可以通过 http://localhost:8081 访问文档了。

Docker Build

docker stop freesql-doc
docker rm freesql-doc
docker rmi igeekfan/freesql-doc
docker build -t igeekfan/freesql-doc .
docker tag igeekfan/freesql-doc igeekfan/freesql-doc:latest
docker login
## 推送到docker hub
docker push igeekfan/freesql-doc:latest
## 运行本地镜像
docker run --name freesql-doc -d -p 8081:80 igeekfan/freesql-doc:latest

upgrade package

pnpm up [email protected]
pnpm up @vuepress/[email protected]
pnpm up @vuepress/[email protected]
pnpm up @vuepress/[email protected]
pnpm up @vuepress/[email protected]
pnpm up [email protected]

vuepress-next

vuepress-theme-hope

源码

官方文档

freesql.wiki.vuepress's People

Contributors

2881099 avatar carbonhe avatar d4ilys avatar densen2014 avatar ensleep avatar fc200 avatar gitlsl avatar hjkl950217 avatar janeconan avatar luoxufeiyan avatar luoyunchong avatar mister-hope avatar newoneperson avatar oliverscode avatar sundayisblue avatar taadis avatar xunapro avatar xxxxue avatar yyylly avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

freesql.wiki.vuepress's Issues

AsTreeCte 递归查询,在MsSqlServer执行时报错: 完成执行语句前已用完最大递归 100,如何追加上OPTION (MAXRECURSION 2);

如何在 AsTreeCte() 方法追加 OPTION (MAXRECURSION 0)
MsSqlServer 递归超过100层,执行递归会报错
示例如下
USE AdventureWorks2008R2;
GO
--Creates an infinite loop
WITH cte (EmployeeID, ManagerID, Title) as
(
SELECT EmployeeID, ManagerID, Title
FROM dbo.MyEmployees
WHERE ManagerID IS NOT NULL
UNION ALL
SELECT cte.EmployeeID, cte.ManagerID, cte.Title
FROM cte
JOIN dbo.MyEmployees AS e
ON cte.ManagerID = e.EmployeeID
)
--Uses MAXRECURSION to limit the recursive levels to 2
SELECT EmployeeID, ManagerID, Title
FROM cte
OPTION (MAXRECURSION 2); --这句话必须加上
GO

Error getting value of IsPrimary in DBFirst

I am using PostgreSQL var 14
I have created test table:

CREATE TABLE public.table_test
(
    id integer NOT NULL,
    coin_list money[],
    PRIMARY KEY (id)
);

In main program:

fsql=new FreeSql.FreeSqlBuilder()...
Debug.Print(fsql.DbFirst.GetTableByName("table_test").Columns.Find(x => x.Name == "coin_list").IsPrimary.ToString());

and print True

发现Select<T>().WithSql(string sql)的一个BUG

数据库类型:

MsSql

表结构:

A表:Id,Name

B表:Id,AId,IsBurn

想法:

按A统计B中,还有多少设备IsBurn=0

以下是我的SQL
SELECT a.Id ,a.Name,COUNT(1) as CountValue FROM B b FULL JOIN A a on b.AId=a.Id GROUP BY a.Id ,a.Name ORDER BY a.Name
在数据库测试时,能跑通,复制到代码使用就失败
Select<T>().WithSql(string sql)

仓储 DeleteAsync提示错误

// 这个不能删除
public async Task BatchDeleted(List<IdDto> idDtos)
{
// 这个返回的是 IEnumerable<Account>
var ids = idDtos.Select(s => new AccountEntity() { Id = s.Id });
await _repository.DeleteAsync(ids);
}
// 这个可以
public async Task BatchDeleted(List<IdDto> idDtos)
{
// 这个返回的是 List<Account>
var ids = idDtos.Select(s => new AccountEntity() { Id = s.Id }).ToList();
await _repository.DeleteAsync(ids);
}

而源码里要求传的也是IEnumerable, 所以这里有点误导人了 ,并且不报异常
Task<int> DeleteAsync(IEnumerable<TEntity> entitys, CancellationToken cancellationToken = default (CancellationToken));

《FreeSql 官方文档/快速入门》第一章“入门”中MS Access类型连接字符串过于老旧,无法支持新的accdb类型的Access数据库文件。

《FreeSql 官方文档/快速入门》第一章“入门”中,关于MS Access类型的连接字符串,文档中给出的连接字符串示例只能用于旧的mdb文件,无法应用到新格式,即accdb的数据库文件。
建议:
1、增加新的支持accdb格式文件的连接字符串示例。
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\MyProgramTesting\MyAccessDB.accdb
2、增加适用于加密accdb格式文件的连接字符串示例。
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\MyProgramTesting\MyAccessDB.accdb;Jet OLEDB:Database Password=12341234
同时建议:
使用前,一定要在电脑中安装:Microsoft Access Database Engine 2016(新系统中尽量装X64版本),否则会报错。

Stack overflow 全局过滤器子查询

using System;
using System.Threading.Tasks;
using FreeSql;
using FreeSql.DataAnnotations;

namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
var freeSqlBuilder = new FreeSqlBuilder()
.UseConnectionString(DataType.Sqlite, "Data Source =| DataDirectory |\admindb.db; Pooling = true; Min Pool Size = 1", typeof(FreeSql.Sqlite.SqliteProvider<>))
.UseAutoSyncStructure(false)
.UseLazyLoading(false)
.UseNoneCommandParameter(true);

        var fsql = freeSqlBuilder.Build();
        fsql.GlobalFilter.Apply<IOrganization>("Organization", a => fsql.Select<UserOrganization>().Where(b=>b.UserId==1&&b.OrganizationId==a.OrganizationId).Any());

        Console.WriteLine(fsql.Select<UserEntity>().ToSql());
        Console.WriteLine();
    
    }
 
    public interface IOrganization { 
    long OrganizationId { get; set; }
    }
    public class UserOrganization: IOrganization
    { 
    
        public long UserId { get; set; }
        public long OrganizationId { get; set; }
    }
    /// <summary>
    /// 用户
    /// </summary>
    [Table(Name = "ad_user")]
    public class UserEntity :IOrganization
    {
        /// <summary>
        /// 主键Id
        /// </summary>
        [Column(Position = 1, IsIdentity = true, IsPrimary = true)]
        public virtual long Id { get; set; }

        /// <summary>
        /// 账号
        /// </summary>
        [Column(StringLength = 60)]
        public string UserName { get; set; }

        /// <summary>
        /// 密码
        /// </summary>
        [Column(StringLength = 60)]
        public string Password { get; set; }
        public long OrganizationId { get; set; }
    }
}

}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.