[{"data":1,"prerenderedAt":585},["ShallowReactive",2],{"docs-\u002Fdocs\u002Fuser\u002Fff-tables\u002F":3,"docs-nav":127},{"id":4,"title":5,"body":6,"description":52,"extension":116,"layout":117,"meta":118,"navGroup":117,"navGroupOrder":117,"navOrder":117,"navTitle":5,"navigation":119,"originalPath":120,"path":121,"redirect":117,"seo":122,"stem":123,"updated":124,"version":125,"__hash__":126},"docs\u002Fdocs\u002Fuser\u002Fff-tables.md","FlowFuse Tables",{"type":7,"value":8,"toc":110},"minimark",[9,13,40,43,46,57,60,68,71,79,84,87,95,99,102],[10,11,5],"h1",{"id":12},"flowfuse-tables",[14,15,19,25],"div",{"className":16},[17,18],"ff-callout","ff-callout--warning",[20,21,24],"p",{"className":22},[23],"ff-callout__title","Warning",[14,26,29],{"className":27},[28],"ff-callout__content",[20,30,31,32,39],{},"This feature is currently in ",[33,34,38],"a",{"href":35,"rel":36},"https:\u002F\u002Fflowfuse.com\u002Fhandbook\u002Fengineering\u002Freleases\u002F#beta-release",[37],"nofollow","the beta state",".",[20,41,42],{},"From FlowFuse v2.20.0 Teams (Enterprise teams only) can create a relational database to use to store data.",[20,44,45],{},"You can create a database by selecting the Tables entry in the left hand menu",[20,47,48,54],{},[49,50],"img",{"alt":51,"dataZoomable":52,"src":53},"Screenshot of FF Tables create database menu","","\u002Fdocs\u002Fuser\u002Fimages\u002Ftables\u002Fcreate-database.png",[55,56,51],"em",{},[20,58,59],{},"Once you have created a database you can use the wizard to create some tables. The wizard offers a subset of the most used column types and has the option to set default values and generate sequences for ids.",[20,61,62,66],{},[49,63],{"alt":64,"dataZoomable":52,"src":65},"Screenshot of create tables wizard","\u002Fdocs\u002Fuser\u002Fimages\u002Ftables\u002Fcreate-table-wizard.png",[55,67,64],{},[20,69,70],{},"Once the tables have data in them then the first 10 rows will be displayed in the Explorer tab.",[20,72,73,77],{},[49,74],{"alt":75,"dataZoomable":52,"src":76},"Screenshot of Tables Explorer","\u002Fdocs\u002Fuser\u002Fimages\u002Ftables\u002Ftables-ui-screenshot.png",[55,78,75],{},[80,81,83],"h2",{"id":82},"query-nodes","Query Nodes",[20,85,86],{},"FlowFuse Node-RED instances come with a Query Node that will be enabled if running in a Team with a FlowFuse Tables database enabled. This node will automatically import the required credentials to connect to the database.",[20,88,89,93],{},[49,90],{"alt":91,"dataZoomable":52,"src":92},"Screenshot of Node-RED query node","\u002Fdocs\u002Fuser\u002Fimages\u002Ftables\u002Ftables-query-node.png",[55,94,91],{},[80,96,98],{"id":97},"postgres-clients","Postgres Clients",[20,100,101],{},"You can connect any Postgres Client to the FlowFuse Tables database using the information on the Credentials tab",[20,103,104,108],{},[49,105],{"alt":106,"dataZoomable":52,"src":107},"Screenshot of credentials","\u002Fdocs\u002Fuser\u002Fimages\u002Ftables\u002Fcredentials.png",[55,109,106],{},{"title":52,"searchDepth":111,"depth":111,"links":112},4,[113,115],{"id":82,"depth":114,"text":83},2,{"id":97,"depth":114,"text":98},"md",null,{},true,"user\u002Fff-tables.md","\u002Fdocs\u002Fuser\u002Fff-tables",{"title":5,"description":52},"docs\u002Fuser\u002Fff-tables","2026-03-17 13:06:15 +0100","2.33.2","7WqviyBocD0CS_BS0hCt9VXbBT1ipW7uIf7-h5tib-A",[128,136,156,168],{"name":129,"order":130,"children":131},"FlowFuse User Manuals",1,[132],{"title":133,"path":134,"group":129,"groupOrder":130,"order":114,"children":135},"FlowFuse API","\u002Fdocs\u002Fapi",[],{"name":137,"order":111,"children":138},"FlowFuse Self-Hosted",[139,143],{"title":140,"path":141,"group":137,"groupOrder":111,"order":130,"children":142},"Quick Start","\u002Fdocs\u002Fquick-start",[],{"title":144,"path":145,"group":137,"groupOrder":111,"order":146,"children":147},"Upgrading FlowFuse","\u002Fdocs\u002Fupgrade",3,[148,152],{"title":149,"path":150,"order":117,"children":151},"Installing a license","\u002Fdocs\u002Fupgrade\u002Fopen-source-to-premium",[],{"title":153,"path":154,"order":117,"children":155},"Upgrading the Node-RED version","\u002Fdocs\u002Fupgrade\u002Fnodered-version",[],{"name":157,"order":158,"children":159},"Support",5,[160,164],{"title":161,"path":162,"group":157,"groupOrder":158,"order":146,"children":163},"Premium Support","\u002Fdocs\u002Fpremium-support",[],{"title":165,"path":166,"group":157,"groupOrder":158,"order":117,"children":167},"Debugging Node-RED issues","\u002Fdocs\u002Fdebugging",[],{"name":169,"order":117,"children":170},"Other",[171,219,231,310,359,378,452,463],{"title":172,"path":173,"order":117,"children":174},"admin","\u002Fdocs\u002Fadmin",[175,179,191,199,203,207,211,215],{"title":176,"path":177,"order":130,"children":178},"Administering FlowFuse","\u002Fdocs\u002Fadmin\u002Fintroduction",[],{"title":180,"path":181,"order":117,"children":182},"Configuring Single Sign-On (SSO)","\u002Fdocs\u002Fadmin\u002Fsso",[183,187],{"title":184,"path":185,"order":117,"children":186},"LDAP SSO","\u002Fdocs\u002Fadmin\u002Fsso\u002Fldap",[],{"title":188,"path":189,"order":117,"children":190},"SAML SSO","\u002Fdocs\u002Fadmin\u002Fsso\u002Fsaml",[],{"title":192,"path":193,"order":117,"children":194},"hardening","\u002Fdocs\u002Fadmin\u002Fhardening",[195],{"title":196,"path":197,"order":117,"children":198},"Kubernetes Hardening","\u002Fdocs\u002Fadmin\u002Fhardening\u002Fkubernetes",[],{"title":200,"path":201,"order":117,"children":202},"Monitoring","\u002Fdocs\u002Fadmin\u002Fmonitoring",[],{"title":204,"path":205,"order":117,"children":206},"Observability","\u002Fdocs\u002Fadmin\u002Fobservability",[],{"title":208,"path":209,"order":117,"children":210},"Soft Launch Enablement","\u002Fdocs\u002Fadmin\u002Ffeature-flags",[],{"title":212,"path":213,"order":117,"children":214},"Telemetry","\u002Fdocs\u002Fadmin\u002Ftelemetry",[],{"title":216,"path":217,"order":117,"children":218},"User Management","\u002Fdocs\u002Fadmin\u002Fuser-management",[],{"title":220,"path":221,"order":117,"children":222},"cloud","\u002Fdocs\u002Fcloud",[223,227],{"title":224,"path":225,"order":130,"children":226},"Introduction","\u002Fdocs\u002Fcloud\u002Fintroduction",[],{"title":228,"path":229,"order":117,"children":230},"FlowFuse Cloud Billing","\u002Fdocs\u002Fcloud\u002Fbilling",[],{"title":232,"path":233,"order":117,"children":234},"contribute","\u002Fdocs\u002Fcontribute",[235,238,242,246,250,254,258,266,302,306],{"title":224,"path":236,"order":130,"children":237},"\u002Fdocs\u002Fcontribute\u002Fintroduction",[],{"title":239,"path":240,"order":117,"children":241},"Adding Template Settings","\u002Fdocs\u002Fcontribute\u002Fadding-template-settings",[],{"title":243,"path":244,"order":117,"children":245},"API Design","\u002Fdocs\u002Fcontribute\u002Fapi-design",[],{"title":247,"path":248,"order":117,"children":249},"Creating debug stack containers","\u002Fdocs\u002Fcontribute\u002Fcreating-debug-stack-containers",[],{"title":251,"path":252,"order":117,"children":253},"Database migrations","\u002Fdocs\u002Fcontribute\u002Fdb-migrations",[],{"title":255,"path":256,"order":117,"children":257},"FlowFuse Architecture","\u002Fdocs\u002Fcontribute\u002Farchitecture",[],{"title":259,"path":260,"order":117,"children":261},"Local Install","\u002Fdocs\u002Fcontribute\u002Flocal",[262],{"title":263,"path":264,"order":117,"children":265},"Local Stacks","\u002Fdocs\u002Fcontribute\u002Flocal\u002Fstacks",[],{"title":267,"path":268,"order":117,"children":269},"State Flows","\u002Fdocs\u002Fcontribute\u002Fworkflows",[270,274,278,282,286,290,294,298],{"title":271,"path":272,"order":117,"children":273},"Device Editor","\u002Fdocs\u002Fcontribute\u002Fworkflows\u002Fdevice-editor",[],{"title":275,"path":276,"order":117,"children":277},"Instance states","\u002Fdocs\u002Fcontribute\u002Fworkflows\u002Fproject-states",[],{"title":279,"path":280,"order":117,"children":281},"Invite External Users","\u002Fdocs\u002Fcontribute\u002Fworkflows\u002Finvite-external-user",[],{"title":283,"path":284,"order":117,"children":285},"Project Creation","\u002Fdocs\u002Fcontribute\u002Fworkflows\u002Fproject-create",[],{"title":287,"path":288,"order":117,"children":289},"Reset Password Flow","\u002Fdocs\u002Fcontribute\u002Fworkflows\u002Fpassword-reset",[],{"title":291,"path":292,"order":117,"children":293},"Team creation Flow","\u002Fdocs\u002Fcontribute\u002Fworkflows\u002Fteam-create",[],{"title":295,"path":296,"order":117,"children":297},"User Login Flows","\u002Fdocs\u002Fcontribute\u002Fworkflows\u002Flogin",[],{"title":299,"path":300,"order":117,"children":301},"User Sign up Flow","\u002Fdocs\u002Fcontribute\u002Fworkflows\u002Fsignup",[],{"title":303,"path":304,"order":117,"children":305},"Team Broker","\u002Fdocs\u002Fcontribute\u002Fteam-broker",[],{"title":307,"path":308,"order":117,"children":309},"Working with Feature Flags","\u002Fdocs\u002Fcontribute\u002Ffeature-flags",[],{"title":311,"path":312,"order":117,"children":313},"device-agent","\u002Fdocs\u002Fdevice-agent",[314,318,321,325,329,334],{"title":315,"path":316,"order":130,"children":317},"FlowFuse Device Agent Introduction","\u002Fdocs\u002Fdevice-agent\u002Fintroduction",[],{"title":140,"path":319,"order":114,"children":320},"\u002Fdocs\u002Fdevice-agent\u002Fquickstart",[],{"title":322,"path":323,"order":111,"children":324},"Register your Remote Instance","\u002Fdocs\u002Fdevice-agent\u002Fregister",[],{"title":326,"path":327,"order":158,"children":328},"Running the Agent","\u002Fdocs\u002Fdevice-agent\u002Frunning",[],{"title":330,"path":331,"order":332,"children":333},"Deploying your Flows","\u002Fdocs\u002Fdevice-agent\u002Fdeploy",6,[],{"title":335,"path":336,"order":117,"children":337},"install","\u002Fdocs\u002Fdevice-agent\u002Finstall",[338,343,347,351,355],{"title":339,"path":340,"group":341,"order":130,"children":342},"Overview","\u002Fdocs\u002Fdevice-agent\u002Finstall\u002Foverview","DeviceAgentInstallation",[],{"title":344,"path":345,"group":341,"order":114,"children":346},"Device Agent Installer","\u002Fdocs\u002Fdevice-agent\u002Finstall\u002Fdevice-agent-installer",[],{"title":348,"path":349,"group":341,"order":146,"children":350},"Docker Install","\u002Fdocs\u002Fdevice-agent\u002Finstall\u002Fdocker",[],{"title":352,"path":353,"group":341,"order":111,"children":354},"Kubernetes Install","\u002Fdocs\u002Fdevice-agent\u002Finstall\u002Fkubernetes",[],{"title":356,"path":357,"group":341,"order":158,"children":358},"Manual Install with NPM","\u002Fdocs\u002Fdevice-agent\u002Finstall\u002Fmanual",[],{"title":360,"path":361,"order":117,"children":362},"hardware","\u002Fdocs\u002Fhardware",[363,366,370,374],{"title":339,"path":364,"order":130,"children":365},"\u002Fdocs\u002Fhardware\u002Fintroduction",[],{"title":367,"path":368,"order":114,"children":369},"ctrlX - Node-RED","\u002Fdocs\u002Fhardware\u002Fctrlx-node-red",[],{"title":371,"path":372,"order":146,"children":373},"ctrlX - Device Agent","\u002Fdocs\u002Fhardware\u002Fctrlx-device-agent",[],{"title":375,"path":376,"order":146,"children":377},"Raspberry Pi with Raspbian","\u002Fdocs\u002Fhardware\u002Fraspbian",[],{"title":335,"path":379,"order":117,"children":380},"\u002Fdocs\u002Finstall",[381,384,388,392,412,416,420,424],{"title":339,"path":382,"order":130,"children":383},"\u002Fdocs\u002Finstall\u002Fintroduction",[],{"title":385,"path":386,"order":117,"children":387},"Configuring FlowFuse","\u002Fdocs\u002Finstall\u002Fconfiguration",[],{"title":389,"path":390,"order":117,"children":391},"DNS Setup","\u002Fdocs\u002Finstall\u002Fdns-setup",[],{"title":393,"path":394,"order":117,"children":395},"Docker install","\u002Fdocs\u002Finstall\u002Fdocker",[396,400,404,408],{"title":397,"path":398,"order":117,"children":399},"Add Project Stacks on Docker","\u002Fdocs\u002Finstall\u002Fdocker\u002Fstacks",[],{"title":401,"path":402,"order":117,"children":403},"Docker Engine on Windows","\u002Fdocs\u002Finstall\u002Fdocker\u002Fwindows-docker-ce",[],{"title":405,"path":406,"order":117,"children":407},"Docker from AWS Market Place","\u002Fdocs\u002Finstall\u002Fdocker\u002Faws-marketplace",[],{"title":409,"path":410,"order":117,"children":411},"Docker on Digital Ocean","\u002Fdocs\u002Finstall\u002Fdocker\u002Fdigital-ocean",[],{"title":413,"path":414,"order":117,"children":415},"Email configuration","\u002Fdocs\u002Finstall\u002Femail-providers",[],{"title":417,"path":418,"order":117,"children":419},"First Run Setup","\u002Fdocs\u002Finstall\u002Ffirst-run",[],{"title":421,"path":422,"order":117,"children":423},"FlowFuse File Storage","\u002Fdocs\u002Finstall\u002Ffile-storage",[],{"title":425,"path":426,"order":117,"children":427},"Install FlowFuse on Kubernetes","\u002Fdocs\u002Finstall\u002Fkubernetes",[428,432,436,440,444,448],{"title":429,"path":430,"order":117,"children":431},"AWS EKS Installation","\u002Fdocs\u002Finstall\u002Fkubernetes\u002Faws",[],{"title":433,"path":434,"order":117,"children":435},"AWS EKS Installation with Terraform and Helm","\u002Fdocs\u002Finstall\u002Fkubernetes\u002Faws-terraform",[],{"title":437,"path":438,"order":117,"children":439},"Digital Ocean Kubernetes Installation","\u002Fdocs\u002Finstall\u002Fkubernetes\u002Fdigital-ocean",[],{"title":441,"path":442,"order":117,"children":443},"Ingress Controller Migration","\u002Fdocs\u002Finstall\u002Fkubernetes\u002Fingress-controller-migration",[],{"title":445,"path":446,"order":117,"children":447},"Kubernetes Project Stacks","\u002Fdocs\u002Finstall\u002Fkubernetes\u002Fstacks",[],{"title":449,"path":450,"order":117,"children":451},"OpenShift Installation","\u002Fdocs\u002Finstall\u002Fkubernetes\u002Fopenshift",[],{"title":453,"path":454,"order":117,"children":455},"migration","\u002Fdocs\u002Fmigration",[456,459],{"title":224,"path":457,"order":130,"children":458},"\u002Fdocs\u002Fmigration\u002Fintroduction",[],{"title":460,"path":461,"order":117,"children":462},"Node-RED Tools plugin","\u002Fdocs\u002Fmigration\u002Fnode-red-tools",[],{"title":464,"path":465,"order":117,"children":466},"user","\u002Fdocs\u002Fuser",[467,471,475,479,483,488,492,496,500,504,508,512,524,528,532,536,540,542,546,550,554,558,562,566,570,574,577,581],{"title":468,"path":469,"order":130,"children":470},"Getting Started","\u002Fdocs\u002Fuser\u002Fintroduction",[],{"title":472,"path":473,"order":130,"children":474},"Static asset service","\u002Fdocs\u002Fuser\u002Fstatic-asset-service",[],{"title":476,"path":477,"order":114,"children":478},"Bill of Materials","\u002Fdocs\u002Fuser\u002Fbill-of-materials",[],{"title":480,"path":481,"order":114,"children":482},"FlowFuse Concepts","\u002Fdocs\u002Fuser\u002Fconcepts",[],{"title":484,"path":485,"order":486,"children":487},"Instance States","\u002Fdocs\u002Fuser\u002Finstance-states",10,[],{"title":489,"path":490,"order":117,"children":491},"Changing the Stack","\u002Fdocs\u002Fuser\u002Fchangestack",[],{"title":493,"path":494,"order":117,"children":495},"Custom Hostnames","\u002Fdocs\u002Fuser\u002Fcustom-hostnames",[],{"title":497,"path":498,"order":117,"children":499},"Custom Node Packages","\u002Fdocs\u002Fuser\u002Fcustom-npm-packages",[],{"title":501,"path":502,"order":117,"children":503},"Dashboards","\u002Fdocs\u002Fuser\u002Fdashboards",[],{"title":505,"path":506,"order":117,"children":507},"DevOps Pipelines","\u002Fdocs\u002Fuser\u002Fdevops-pipelines",[],{"title":509,"path":510,"order":117,"children":511},"Environment Variables","\u002Fdocs\u002Fuser\u002Fenvvar",[],{"title":513,"path":514,"order":117,"children":515},"FlowFuse Expert","\u002Fdocs\u002Fuser\u002Fexpert",[516,520],{"title":517,"path":518,"order":117,"children":519},"AI in Node-RED","\u002Fdocs\u002Fuser\u002Fexpert\u002Fnode-red-embedded-ai",[],{"title":521,"path":522,"order":117,"children":523},"Chat Interface","\u002Fdocs\u002Fuser\u002Fexpert\u002Fchat",[],{"title":525,"path":526,"order":117,"children":527},"FlowFuse File Nodes","\u002Fdocs\u002Fuser\u002Ffilenodes",[],{"title":529,"path":530,"order":117,"children":531},"FlowFuse MQTT Nodes","\u002Fdocs\u002Fuser\u002Fmqtt-nodes",[],{"title":533,"path":534,"order":117,"children":535},"FlowFuse Persistent Context","\u002Fdocs\u002Fuser\u002Fpersistent-context",[],{"title":537,"path":538,"order":117,"children":539},"FlowFuse Project Nodes","\u002Fdocs\u002Fuser\u002Fprojectnodes",[],{"title":5,"path":121,"order":117,"children":541},[],{"title":543,"path":544,"order":117,"children":545},"Groups","\u002Fdocs\u002Fuser\u002Fdevice-groups",[],{"title":547,"path":548,"order":117,"children":549},"High Availability mode","\u002Fdocs\u002Fuser\u002Fhigh-availability",[],{"title":551,"path":552,"order":117,"children":553},"HTTP Access Tokens","\u002Fdocs\u002Fuser\u002Fhttp-access-tokens",[],{"title":555,"path":556,"order":117,"children":557},"Instance Settings","\u002Fdocs\u002Fuser\u002Finstance-settings",[],{"title":559,"path":560,"order":117,"children":561},"Logging","\u002Fdocs\u002Fuser\u002Flogs",[],{"title":563,"path":564,"order":117,"children":565},"Role-Based Access Control","\u002Fdocs\u002Fuser\u002Frole-based-access-control",[],{"title":567,"path":568,"order":117,"children":569},"Shared Team Library","\u002Fdocs\u002Fuser\u002Fshared-library",[],{"title":571,"path":572,"order":117,"children":573},"Snapshots","\u002Fdocs\u002Fuser\u002Fsnapshots",[],{"title":303,"path":575,"order":117,"children":576},"\u002Fdocs\u002Fuser\u002Fteambroker",[],{"title":578,"path":579,"order":117,"children":580},"Teams","\u002Fdocs\u002Fuser\u002Fteam",[],{"title":582,"path":583,"order":117,"children":584},"User Settings","\u002Fdocs\u002Fuser\u002Fuser-settings",[],1786546044315]