49

If you have QGIS running and compiled against GDAL 1.11.0, it now has native FileGDB support via the OpenFileGDB driver. To open a geodatabase in QGIS, be sure to choose "Add vector layer", "Source Type = Directory" and source should be either "OpenFileGDB" or "ESRI FileGDB". Then just browse to the *.gdb folder of choice, press "Open" and the layers will ...


46

You can use rgdal to access feature classes in Esri file geodatabases. require(rgdal) # The input file geodatabase fgdb <- "C:/path/to/your/filegeodatabase.gdb" # List all feature classes in a file geodatabase subset(ogrDrivers(), grepl("GDB", name)) fc_list <- ogrListLayers(fgdb) print(fc_list) # Read the feature class fc <- readOGR(dsn=fgdb,...


33

This can now be read by sf, with vessel <- sf::st_read(dsn = "Zone9_2014_01.gdb", layer = "Zone9_2014_01_Vessel") It returns a warning (no feature geometries present) but also a data.frame with the table. See the thread that started here: https://stat.ethz.ch/pipermail/r-sig-geo/2018-February/026344.html


24

Try adding appropriate host and port arguments. And BTW, when I import a large GDB file, I also add these flags: -overwrite (erases any mess you may have already inserted) and -progress (displays a dot or number for every 10,000 or 10% records added): --config PG_USE_COPY YES (greatly improves speed) So the command (which should be a one-liner but i ...


20

Right-click the feature class in ArcCatalog and go to the Properties. In the Feature Extent tab, click on Recalculate. And voilà! I'm using ArcGIS 10.2.1


18

An automated way of doing this task is by running a python function within Field Calculator (no selecting and reverse selecting required), see example below: Additionally, if you want to replace NULL with an empty string just add these two statements: elif value is None: return ''


18

One option that may be a bit faster (less clicks) or you could call from a script would be to use ogr2ogr command (using OSGeo4wShell (which comes with installation of QGIS)). ogr2ogr -f "ESRI Shapefile" C:/Temp/Shps C:/Temp/test.gdb If you want to export out a subset you may use the same command above but at the end list out the table name(s) (e.g. parcel ...


18

The fiona.listlayers() function returns a list of names of layers in a dataset. import fiona fiona.listlayers('NYCFutureHighTideWithSLR.gdb') Any of the elements of the list can be used as a value of the layer keyword argument for gpd.read_file(). The integer index of a list element may also be used. If the layers of your dataset are ['layer_a', 'layer_b']...


16

The gdal OpenFileGDB driver was reversed engineered.. I guess this reverse engineering didn't include the licensing component! Suffice to say - if current versions of gdal can freely open this data, I don't think there's any way you can prevent savvy users from doing that.


15

I recommend that you try the Feature Class To Shapefile ( Conversion) tool instead: Copies the features from one or more feature classes or layers to a folder of shapefiles. This should enable you to convert feature classes within your file geodatabase to shapefiles.


14

File Geodatabase in QGIS 2.4 Note: Use Directory rather than File Once the file geodatbase is loaded save the shapefile


14

As already posted in this answer, this now also works very nicely with sf: require(sf) fc <- sf::st_read("C:/path/to/your/filegeodatabase.gdb", layer = "some_featureclass") But writing into a fgdb ist not implemented (yet?), you'd have to have a ArcGIS / ArcMap License as well as the R library arcgisbinding (see https://github.com/R-ArcGIS/r-bridge) ...


13

File geodatabases (FGDB): A FGDB may contain feature datasets, which aid in coordinate system control and data integrity via topology rules. You are on your own with shapefiles. FC's may be up to 256 TB in size with the use of configuration keywords. All component files of a shapefile are limited to 2GB each (source & whitepaper). FC performance is ...


13

In the help in ogr2ogr --long-usage, there is layer creation option: -lco NAME=VALUE: Layer creation option (format specific) You can use the driver specific option GEOMETRY_NAME=geom to Set name of geometry column in new table as follows: ogr2ogr -lco GEOMETRY_NAME=geom -append -f "PostgreSQL" PG:"dbname=database host=localhost user=username ...


12

Spatial Analyst is necessary for most raster tasks in ArcGIS beyond simple display and clipping. If you have that, then you can use Extract by Attributes to create new rasters of just one value. It would be the value from the original raster though, and you'd have to Reclassify it to 1 or 0. You can use Reclassify directly to generate a new raster and map ...


12

There is this blog post (in french, dated june 2015) that explain that the data are not encrypted but merely renamed with the prefix ''GDB_SecureCopy'' that ESRI product doesn't seem to by able to see or open without the licence file. As Qgis (at this time 2.8) was able to open it (in less time that it would have taken to install the licence file to open ...


11

I've just released a prototype program Arc Raster Rescue which extracts raster data from the ArcGIS File Geodatabase format.


11

Personal geodatabase are great because they can be accessed outside of ArcGIS. But they are slow and, in practice, the performance starts degrading after they get larger than 400-500MB in size. If you can - do migrate to the file geodatabases. There are many ways you can query your data using SQL-like syntax: Select By Attributes geoprocessing tool or a ...


11

How about a local PostGIS instance? PostgeSQL can be downloaded from https://www.postgresql.org/download/ to which a PostGIS extension can be created to make it a spatial database. Also recommended would be to download pgAdmin https://www.pgadmin.org/ See How do I setup a PostGIS database and open it in QGIS on Windows? which may help with the set up.


10

You can access the feature extent of a feature class by using the Describe function import arcpy, os fc = r'C:\path\to\your.gdb\fc' desc = arcpy.Describe(fc) xmin = desc.extent.XMin xmax = desc.extent.XMax ymin = desc.extent.YMin ymax = desc.extent.YMax print "xmin: %s \nxmax: %s \nymin: %s \nymax: %s" % (xmin, xmax, ymin, ymax) You can change the ...


9

Here's what I did to resolve the issue (using arcpy in ArcGIS 10.0) - This assumes the following: FGDB - C:\gisdata\Test.gdb Feature Class - C:\gisdata\Test.gdb\bldg You can modify your paths and object names in the code and paste it into the python window in ArcCatalog. sr = arcpy.Describe(r'C:\gisdata\Test.gdb\bldg').spatialReference arcpy....


9

ESRI intentionally obfuscated the FileGDB file structure so people wouldn't try and mess with it internally: A file geodatabase is stored as a folder of files. When you view the folder with Windows Explorer, apart from the .gdb extension, it looks like any other folder and you can view its contents. The folder contains cryptically named files that ...


9

This question has been converted to Community Wiki and wiki locked because it is an example of a question that seeks a list of answers and appears to be popular enough to protect it from closure. It should be treated as a special case and should not be viewed as the type of question that is encouraged on this, or any Stack Exchange site, but if ...


9

From what I know, there is no property to automatically identify compressed file geodatabase with arcgis. But you can see this information in ArcCatalog : A compressed feature class or table has "(compressed)" in the Type column. For routine check, you can also look for the .cdf files inside your .gdb folder using file searching methods (e.g. os.walk() or ...


9

[Edited] If your feature classes are saved as *.shp, you could try: ogr2ogr -f "FileGDB" mygdb.gdb ~/PathTo/MyFeatureClass.shp -lco FEATURE_DATASET=my_features However, since you are exporting from PostGIS another approach could be something like this: ogr2ogr -f "FileGDB" mygdb.gdb PG:"host=my_host user=my_user_name dbname=my_db_name password=...


9

I use GDAL 2.0.2 that is "shipped" with FDGB support and without a third party a FGDB driver to investigate that stuff. The test environment is Debian Jessie 64-bit. In short, it seems, that the "layer" Zone9_2014_01_Vessel contains pure attribute data and the layer Zone9_2014_01_Broadcast contains position data. You can use a workaround within R via a ...


9

Try the Describe function: arcpy.Describe("<layer name>").DSID The manual way In the Catalog window of ArcMap, browse to the feature class. Right-click the feature class, then choose Properties. In the Feature Class Properties dialog box, click the General tab. Click the button with the ellipsis, which is next to the Name text box. The Object ...


8

I recently ran into this problem and was able to solve it by deleting the spatial index on the feature I was trying to edit. For reference I'm working with features in WGS84 (EPSG:4326).


8

If you need to have multiple PCs accessing files, it would seem to make more sense to migrate to a true spatial server setup rather than an ad hoc one using Dropbox. This could be either a hosted server running ArcGIS or a PostGIS database running on a cloud web service like AWS. My preference would be for the latter. It'll take a little more work to set ...


8

The Features tab of the Find tool will do this if you add every feature class in the File Geodatabase to a map. For example, if you are trying to find Afghanistan on a map of the world, you can enter Afghanistan or just Afgh in the Find tool, and you'll get a list of the features from layers in your map that contain that search string in any of ...


Only top voted, non community-wiki answers of a minimum length are eligible